Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
shopee_for_wordpress_publish.ipynb
{
"cells": [
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "import pandas as pd\nimport numpy as np\nimport seaborn as sns\nimport os, sys, datetime, re\n\nfrom sklearn.preprocessing import OneHotEncoder\nfrom sklearn.model_selection import train_test_split\nfrom sklearn.feature_extraction.text import CountVectorizer, TfidfVectorizer\nfrom sklearn.metrics import accuracy_score, confusion_matrix\nfrom sklearn.metrics import classification_report\n\nfrom sklearn.linear_model import SGDClassifier\nfrom sklearn.pipeline import Pipeline\nfrom sklearn.feature_extraction.text import TfidfTransformer\n\nimport matplotlib.pyplot as plt",
"execution_count": 12,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "fname = 'mobile_data_info_train_competition.csv'\ndf = pd.read_csv(fname)",
"execution_count": 2,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "plt.figure()\ndf.hist(figsize=(10,10))\nplt.show()",
"execution_count": 5,
"outputs": [
{
"data": {
"text/plain": "<Figure size 432x288 with 0 Axes>"
},
"metadata": {},
"output_type": "display_data"
},
{
"data": {
"image/png": "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\n",
"text/plain": "<Figure size 720x720 with 12 Axes>"
},
"metadata": {},
"output_type": "display_data"
}
]
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "def clean_text(text):\n \"\"\" Return: modified cleaned initial string.\n \"\"\"\n\n text = text.lower() \n text = re.sub('[/(){}\\[\\]\\|@,;]',' ', text) # replace with space\n text = re.sub('[^0-9a-z #+_]', '', text) # remove special characters\n\n return text",
"execution_count": 9,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# replace nan with best value based on exploration\ndf['Warranty Period'] = df['Warranty Period'].fillna(df['Warranty Period'].mode()[0])\ndf['Operating System'] = df['Operating System'].fillna(df['Operating System'].mode()[0])\ndf['Network Connections'] = df['Network Connections'].fillna(df['Network Connections'].mode()[0])",
"execution_count": 7,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# Convert attributes to integer\nfor col in [ 'Operating System', 'Features','Network Connections', 'Memory RAM', 'Brand', 'Warranty Period',\\\n 'Storage Capacity', 'Color Family', 'Phone Model', 'Camera', 'Phone Screen Size']:\n df[col] = df[col].fillna(-1)\n df[col] = df[col].astype('int')\n df[col] = df[col].astype('str')\n df[col] = df[col].replace('-1', np.nan)\n\ndf['title1'] = df['title'].apply(clean_text)",
"execution_count": 10,
"outputs": []
},
{
"metadata": {
"trusted": true
},
"cell_type": "code",
"source": "# Prepare model -- Drop na and keep those with values\ndef get_X_Y_data(x_col, y_col):\n sub_df = df[[x_col, y_col]]\n sub_df.head()\n sub_df = sub_df.dropna()\n return sub_df[x_col], sub_df[y_col]\n\ndef generate_model(X, y):\n \n X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.3, random_state = 42)\n\n pred_model = Pipeline([('vect', CountVectorizer()),\n ('tfidf', TfidfTransformer()),\n ('clf', SGDClassifier(loss='hinge', penalty='l2',alpha=1e-3, random_state=42, max_iter=5, tol=None)),#hinge\n ])\n pred_model.fit(X_train, y_train)\n\n y_pred = pred_model.predict(X_test)\n\n print('accuracy %s' % accuracy_score(y_pred, y_test))\n #print(classification_report(y_test, y_pred))\n \n return pred_model\n \n\nX, y = get_X_Y_data('title1', 'Brand')\nbrand_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Operating System')\nos_model = generate_model(X, y) \nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Network Connections')\nnetwork_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Warranty Period')\nwarranty_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Color Family')\ncolor_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Phone Model')\nphonemodel_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Storage Capacity')\nstorage_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Memory RAM')\nram_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Phone Screen Size')\nscreen_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Features')\nfeature_model = generate_model(X, y)\nprint('='*29)\n\nX, y = get_X_Y_data('title1', 'Camera')\ncamera_model = generate_model(X, y)\nprint('='*29)",
"execution_count": 13,
"outputs": [
{
"output_type": "stream",
"text": "accuracy 0.9806071551427589\n=============================\naccuracy 0.9536996611156157\n=============================\naccuracy 0.9645938585001768\n=============================\naccuracy 0.9384186781429967\n=============================\naccuracy 0.7848330058939096\n=============================\naccuracy 0.8950025637991559\n=============================\naccuracy 0.9249406175771971\n=============================\naccuracy 0.8397615708274895\n=============================\naccuracy 0.6734631460903252\n=============================\naccuracy 0.7034056252117926\n=============================\naccuracy 0.6215263657313271\n=============================\n",
"name": "stdout"
}
]
}
],
"metadata": {
"_draft": {
"nbviewer_url": "https://gist.github.com/91545bc442cb4f4e5d5387f3bfb03f55"
},
"gist": {
"id": "91545bc442cb4f4e5d5387f3bfb03f55",
"data": {
"description": "shopee_for_wordpress_publish.ipynb",
"public": true
}
},
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.6.4"
}
},
"nbformat": 4,
"nbformat_minor": 2
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment