{"metadata":{"kernelspec":{"language":"python","display_name":"Python 3","name":"python3"},"language_info":{"pygments_lexer":"ipython3","nbconvert_exporter":"python","version":"3.6.4","file_extension":".py","codemirror_mode":{"name":"ipython","version":3},"name":"python","mimetype":"text/x-python"}},"nbformat_minor":4,"nbformat":4,"cells":[{"cell_type":"code","source":"import pandas as pd \nimport numpy as np\nimport matplotlib.pyplot as plt\nfrom sklearn.feature_extraction.text import TfidfVectorizer\nfrom catboost import CatBoostClassifier","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"train = pd.read_csv('../input/feedback-prize-effectiveness/train.csv')\ntest = pd.read_csv('../input/feedback-prize-effectiveness/test.csv')","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"vectorizer = TfidfVectorizer()\nvectorizer.fit(train.discourse_text)\nX_train = vectorizer.transform(train.discourse_text)\nX_test = vectorizer.transform(test.discourse_text)\ny_train = train.discourse_effectiveness.replace({'Adequate':0, 'Effective':1,'Ineffective':-1})","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"model = CatBoostClassifier(verbose=False)\nmodel.fit(X_train.astype('float32'), y_train)\ny_hat = model.predict_proba (X_test.astype('float32'))","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"submission = pd.read_csv('../input/feedback-prize-effectiveness/sample_submission.csv')\nsubmission[['Ineffective','Adequate','Effective']] = y_hat\nsubmission","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"submission.to_csv('submission.csv', index=False)","metadata":{},"execution_count":null,"outputs":[]},{"cell_type":"code","source":"","metadata":{},"execution_count":null,"outputs":[]}]}