{"nbformat":4,"nbformat_minor":0,"metadata":{"colab":{"provenance":[],"authorship_tag":"ABX9TyMdKrfTgB6USghOU+OCQMjs"},"kernelspec":{"name":"python3","display_name":"Python 3"},"language_info":{"name":"python"}},"cells":[{"cell_type":"markdown","source":["Hate Speech and Offensive Language Dataset\n","\n","https://www.kaggle.com/datasets/mrmorj/hate-speech-and-offensive-language-dataset\n","\n","https://github.com/t-davidson/hate-speech-and-offensive-language\n"],"metadata":{"id":"Td1gWRsqwhR4"}},{"cell_type":"code","execution_count":1,"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"SSNxPCAstaY4","executionInfo":{"status":"ok","timestamp":1725030328990,"user_tz":-180,"elapsed":35064,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"c433cea1-726a-4b8f-c68e-395c87da5276"},"outputs":[{"output_type":"stream","name":"stdout","text":["Mounted at /content/drive\n"]}],"source":["from google.colab import drive\n","drive.mount('/content/drive')"]},{"cell_type":"code","source":["import numpy as np\n","import pandas as pd\n","import matplotlib.pyplot as plt\n","import seaborn as sns\n","sns.set_theme()"],"metadata":{"id":"ianB4i41t25N","executionInfo":{"status":"ok","timestamp":1725030330933,"user_tz":-180,"elapsed":1953,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":2,"outputs":[]},{"cell_type":"code","source":["df = pd.read_csv('/content/drive/MyDrive/1- PhD/4-2023/10- Merge/Analysis/labeled_data.csv')"],"metadata":{"id":"DUjbKbQruTxM","executionInfo":{"status":"ok","timestamp":1725030332115,"user_tz":-180,"elapsed":1190,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":3,"outputs":[]},{"cell_type":"code","source":["df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":615},"id":"m6NGQBDLvMQK","executionInfo":{"status":"ok","timestamp":1725030332120,"user_tz":-180,"elapsed":61,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"950664ce-d9b2-4698-b823-7a3189cd76f8"},"execution_count":4,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Unnamed: 0 count hate_speech offensive_language neither class \\\n","0 0 3 0 0 3 2 \n","1 1 3 0 3 0 1 \n","2 2 3 0 3 0 1 \n","3 3 3 0 2 1 1 \n","4 4 6 0 6 0 1 \n","... ... ... ... ... ... ... \n","24778 25291 3 0 2 1 1 \n","24779 25292 3 0 1 2 2 \n","24780 25294 3 0 3 0 1 \n","24781 25295 6 0 6 0 1 \n","24782 25296 3 0 0 3 2 \n","\n"," tweet \n","0 !!! RT @mayasolovely: As a woman you shouldn't... \n","1 !!!!! RT @mleew17: boy dats cold...tyga dwn ba... \n","2 !!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby... \n","3 !!!!!!!!! RT @C_G_Anderson: @viva_based she lo... \n","4 !!!!!!!!!!!!! RT @ShenikaRoberts: The shit you... \n","... ... \n","24778 you's a muthaf***in lie “@LifeAsKing: @2... \n","24779 you've gone and broke the wrong heart baby, an... \n","24780 young buck wanna eat!!.. dat nigguh like I ain... \n","24781 youu got wild bitches tellin you lies \n","24782 ~~Ruffled | Ntac Eileen Dahlia - Beautiful col... \n","\n","[24783 rows x 7 columns]"],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
Unnamed: 0counthate_speechoffensive_languageneitherclasstweet
0030032!!! RT @mayasolovely: As a woman you shouldn't...
1130301!!!!! RT @mleew17: boy dats cold...tyga dwn ba...
2230301!!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby...
3330211!!!!!!!!! RT @C_G_Anderson: @viva_based she lo...
4460601!!!!!!!!!!!!! RT @ShenikaRoberts: The shit you...
........................
247782529130211you's a muthaf***in lie “@LifeAsKing: @2...
247792529230122you've gone and broke the wrong heart baby, an...
247802529430301young buck wanna eat!!.. dat nigguh like I ain...
247812529560601youu got wild bitches tellin you lies
247822529630032~~Ruffled | Ntac Eileen Dahlia - Beautiful col...
\n","

24783 rows × 7 columns

\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n"," \n"," \n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df","summary":"{\n \"name\": \"df\",\n \"rows\": 24783,\n \"fields\": [\n {\n \"column\": \"Unnamed: 0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 7299,\n \"min\": 0,\n \"max\": 25296,\n \"num_unique_values\": 24783,\n \"samples\": [\n 2326,\n 16283,\n 19362\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"count\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 3,\n \"max\": 9,\n \"num_unique_values\": 5,\n \"samples\": [\n 6,\n 7,\n 9\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"hate_speech\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 7,\n \"num_unique_values\": 8,\n \"samples\": [\n 1,\n 6,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"offensive_language\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 9,\n \"num_unique_values\": 10,\n \"samples\": [\n 8,\n 3,\n 7\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"neither\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 9,\n \"num_unique_values\": 10,\n \"samples\": [\n 8,\n 0,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"class\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tweet\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 24783,\n \"samples\": [\n \"934 8616\\ni got a missed call from yo bitch\",\n \"RT @KINGTUNCHI_: Fucking with a bad bitch you gone need some money lil homie!\",\n \"RT @eanahS__: @1inkkofrosess lol my credit ain't no where near good , but I know the right man for the job .. that ho nice though!\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":4}]},{"cell_type":"code","source":["df.describe()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":300},"id":"Tdvq0OhcvNz4","executionInfo":{"status":"ok","timestamp":1725030332121,"user_tz":-180,"elapsed":53,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"5abf3aeb-6011-4a51-b0a9-2ec33467ea10"},"execution_count":5,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Unnamed: 0 count hate_speech offensive_language \\\n","count 24783.000000 24783.000000 24783.000000 24783.000000 \n","mean 12681.192027 3.243473 0.280515 2.413711 \n","std 7299.553863 0.883060 0.631851 1.399459 \n","min 0.000000 3.000000 0.000000 0.000000 \n","25% 6372.500000 3.000000 0.000000 2.000000 \n","50% 12703.000000 3.000000 0.000000 3.000000 \n","75% 18995.500000 3.000000 0.000000 3.000000 \n","max 25296.000000 9.000000 7.000000 9.000000 \n","\n"," neither class \n","count 24783.000000 24783.000000 \n","mean 0.549247 1.110277 \n","std 1.113299 0.462089 \n","min 0.000000 0.000000 \n","25% 0.000000 1.000000 \n","50% 0.000000 1.000000 \n","75% 0.000000 1.000000 \n","max 9.000000 2.000000 "],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
Unnamed: 0counthate_speechoffensive_languageneitherclass
count24783.00000024783.00000024783.00000024783.00000024783.00000024783.000000
mean12681.1920273.2434730.2805152.4137110.5492471.110277
std7299.5538630.8830600.6318511.3994591.1132990.462089
min0.0000003.0000000.0000000.0000000.0000000.000000
25%6372.5000003.0000000.0000002.0000000.0000001.000000
50%12703.0000003.0000000.0000003.0000000.0000001.000000
75%18995.5000003.0000000.0000003.0000000.0000001.000000
max25296.0000009.0000007.0000009.0000009.0000002.000000
\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","summary":"{\n \"name\": \"df\",\n \"rows\": 8,\n \"fields\": [\n {\n \"column\": \"Unnamed: 0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 9019.443540678876,\n \"min\": 0.0,\n \"max\": 25296.0,\n \"num_unique_values\": 8,\n \"samples\": [\n 12681.19202679256,\n 12703.0,\n 24783.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"count\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8760.844908191184,\n \"min\": 0.8830600691421232,\n \"max\": 24783.0,\n \"num_unique_values\": 5,\n \"samples\": [\n 3.2434733486664244,\n 9.0,\n 0.8830600691421232\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"hate_speech\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.714374693967,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 5,\n \"samples\": [\n 0.28051486906347095,\n 7.0,\n 0.6318510592276959\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"offensive_language\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.062853899848,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 7,\n \"samples\": [\n 24783.0,\n 2.413711011580519,\n 3.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"neither\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.575679681884,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 5,\n \"samples\": [\n 0.5492474680224347,\n 9.0,\n 1.1132985222300682\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"class\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.781742989284,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 6,\n \"samples\": [\n 24783.0,\n 1.1102772061493766,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":5}]},{"cell_type":"code","source":["df.info()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"F9s-tPrHvQ0_","executionInfo":{"status":"ok","timestamp":1725030332122,"user_tz":-180,"elapsed":50,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"a845fabb-d409-4ee6-989e-7d42ca114926"},"execution_count":6,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","RangeIndex: 24783 entries, 0 to 24782\n","Data columns (total 7 columns):\n"," # Column Non-Null Count Dtype \n","--- ------ -------------- ----- \n"," 0 Unnamed: 0 24783 non-null int64 \n"," 1 count 24783 non-null int64 \n"," 2 hate_speech 24783 non-null int64 \n"," 3 offensive_language 24783 non-null int64 \n"," 4 neither 24783 non-null int64 \n"," 5 class 24783 non-null int64 \n"," 6 tweet 24783 non-null object\n","dtypes: int64(6), object(1)\n","memory usage: 1.3+ MB\n"]}]},{"cell_type":"code","source":["df.head()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":310},"id":"jin4s6i0vTyo","executionInfo":{"status":"ok","timestamp":1725030332122,"user_tz":-180,"elapsed":44,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"2f1083c1-23a6-40e1-a39d-7f1ef7f42c40"},"execution_count":7,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" Unnamed: 0 count hate_speech offensive_language neither class \\\n","0 0 3 0 0 3 2 \n","1 1 3 0 3 0 1 \n","2 2 3 0 3 0 1 \n","3 3 3 0 2 1 1 \n","4 4 6 0 6 0 1 \n","\n"," tweet \n","0 !!! RT @mayasolovely: As a woman you shouldn't... \n","1 !!!!! RT @mleew17: boy dats cold...tyga dwn ba... \n","2 !!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby... \n","3 !!!!!!!!! RT @C_G_Anderson: @viva_based she lo... \n","4 !!!!!!!!!!!!! RT @ShenikaRoberts: The shit you... "],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
Unnamed: 0counthate_speechoffensive_languageneitherclasstweet
0030032!!! RT @mayasolovely: As a woman you shouldn't...
1130301!!!!! RT @mleew17: boy dats cold...tyga dwn ba...
2230301!!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby...
3330211!!!!!!!!! RT @C_G_Anderson: @viva_based she lo...
4460601!!!!!!!!!!!!! RT @ShenikaRoberts: The shit you...
\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df","summary":"{\n \"name\": \"df\",\n \"rows\": 24783,\n \"fields\": [\n {\n \"column\": \"Unnamed: 0\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 7299,\n \"min\": 0,\n \"max\": 25296,\n \"num_unique_values\": 24783,\n \"samples\": [\n 2326,\n 16283,\n 19362\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"count\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 3,\n \"max\": 9,\n \"num_unique_values\": 5,\n \"samples\": [\n 6,\n 7,\n 9\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"hate_speech\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 7,\n \"num_unique_values\": 8,\n \"samples\": [\n 1,\n 6,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"offensive_language\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 9,\n \"num_unique_values\": 10,\n \"samples\": [\n 8,\n 3,\n 7\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"neither\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 9,\n \"num_unique_values\": 10,\n \"samples\": [\n 8,\n 0,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"class\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tweet\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 24783,\n \"samples\": [\n \"934 8616\\ni got a missed call from yo bitch\",\n \"RT @KINGTUNCHI_: Fucking with a bad bitch you gone need some money lil homie!\",\n \"RT @eanahS__: @1inkkofrosess lol my credit ain't no where near good , but I know the right man for the job .. that ho nice though!\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":7}]},{"cell_type":"code","source":["df.isnull().sum()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":304},"id":"1hV3aXc2vfx4","executionInfo":{"status":"ok","timestamp":1725030332124,"user_tz":-180,"elapsed":43,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"50e11887-2d39-4c37-dcab-136ef5fc2968"},"execution_count":8,"outputs":[{"output_type":"execute_result","data":{"text/plain":["Unnamed: 0 0\n","count 0\n","hate_speech 0\n","offensive_language 0\n","neither 0\n","class 0\n","tweet 0\n","dtype: int64"],"text/html":["
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
0
Unnamed: 00
count0
hate_speech0
offensive_language0
neither0
class0
tweet0
\n","

"]},"metadata":{},"execution_count":8}]},{"cell_type":"code","source":["df.count"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":187},"id":"alixEdkRvuuJ","executionInfo":{"status":"ok","timestamp":1725030332464,"user_tz":-180,"elapsed":379,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"d60196ff-80bb-4f84-a81e-b66391eb1762"},"execution_count":9,"outputs":[{"output_type":"execute_result","data":{"text/plain":[""],"text/html":["
\n","
pandas.core.frame.DataFrame.count
def count(axis: Axis=0, numeric_only: bool=False)
/usr/local/lib/python3.10/dist-packages/pandas/core/frame.pyCount non-NA cells for each column or row.\n","\n","The values `None`, `NaN`, `NaT`, ``pandas.NA`` are considered NA.\n","\n","Parameters\n","----------\n","axis : {0 or 'index', 1 or 'columns'}, default 0\n","    If 0 or 'index' counts are generated for each column.\n","    If 1 or 'columns' counts are generated for each row.\n","numeric_only : bool, default False\n","    Include only `float`, `int` or `boolean` data.\n","\n","Returns\n","-------\n","Series\n","    For each column/row the number of non-NA/null entries.\n","\n","See Also\n","--------\n","Series.count: Number of non-NA elements in a Series.\n","DataFrame.value_counts: Count unique combinations of columns.\n","DataFrame.shape: Number of DataFrame rows and columns (including NA\n","    elements).\n","DataFrame.isna: Boolean same-sized DataFrame showing places of NA\n","    elements.\n","\n","Examples\n","--------\n","Constructing DataFrame from a dictionary:\n","\n",">>> df = pd.DataFrame({"Person":\n","...                    ["John", "Myla", "Lewis", "John", "Myla"],\n","...                    "Age": [24., np.nan, 21., 33, 26],\n","...                    "Single": [False, True, True, True, False]})\n",">>> df\n","   Person   Age  Single\n","0    John  24.0   False\n","1    Myla   NaN    True\n","2   Lewis  21.0    True\n","3    John  33.0    True\n","4    Myla  26.0   False\n","\n","Notice the uncounted NA values:\n","\n",">>> df.count()\n","Person    5\n","Age       4\n","Single    5\n","dtype: int64\n","\n","Counts for each **row**:\n","\n",">>> df.count(axis='columns')\n","0    3\n","1    2\n","2    3\n","3    3\n","4    3\n","dtype: int64
\n"," \n","
"]},"metadata":{},"execution_count":9}]},{"cell_type":"code","source":["!pip install streamlit"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"7agpTYVV7iWi","executionInfo":{"status":"ok","timestamp":1725030342011,"user_tz":-180,"elapsed":9564,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"0153642d-ee33-423c-e1cb-7eef3eeacbd2"},"execution_count":10,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting streamlit\n"," Downloading streamlit-1.38.0-py2.py3-none-any.whl.metadata (8.5 kB)\n","Requirement already satisfied: altair<6,>=4.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (4.2.2)\n","Requirement already satisfied: blinker<2,>=1.0.0 in /usr/lib/python3/dist-packages (from streamlit) (1.4)\n","Requirement already satisfied: cachetools<6,>=4.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (5.5.0)\n","Requirement already satisfied: click<9,>=7.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (8.1.7)\n","Requirement already satisfied: numpy<3,>=1.20 in /usr/local/lib/python3.10/dist-packages (from streamlit) (1.26.4)\n","Requirement already satisfied: packaging<25,>=20 in /usr/local/lib/python3.10/dist-packages (from streamlit) (24.1)\n","Requirement already satisfied: pandas<3,>=1.3.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (2.1.4)\n","Requirement already satisfied: pillow<11,>=7.1.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (9.4.0)\n","Requirement already satisfied: protobuf<6,>=3.20 in /usr/local/lib/python3.10/dist-packages (from streamlit) (3.20.3)\n","Requirement already satisfied: pyarrow>=7.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (14.0.2)\n","Requirement already satisfied: requests<3,>=2.27 in /usr/local/lib/python3.10/dist-packages (from streamlit) (2.32.3)\n","Requirement already satisfied: rich<14,>=10.14.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (13.8.0)\n","Collecting tenacity<9,>=8.1.0 (from streamlit)\n"," Downloading tenacity-8.5.0-py3-none-any.whl.metadata (1.2 kB)\n","Requirement already satisfied: toml<2,>=0.10.1 in /usr/local/lib/python3.10/dist-packages (from streamlit) (0.10.2)\n","Requirement already satisfied: typing-extensions<5,>=4.3.0 in /usr/local/lib/python3.10/dist-packages (from streamlit) (4.12.2)\n","Collecting gitpython!=3.1.19,<4,>=3.0.7 (from streamlit)\n"," Downloading GitPython-3.1.43-py3-none-any.whl.metadata (13 kB)\n","Collecting pydeck<1,>=0.8.0b4 (from streamlit)\n"," Downloading pydeck-0.9.1-py2.py3-none-any.whl.metadata (4.1 kB)\n","Requirement already satisfied: tornado<7,>=6.0.3 in /usr/local/lib/python3.10/dist-packages (from streamlit) (6.3.3)\n","Collecting watchdog<5,>=2.1.5 (from streamlit)\n"," Downloading watchdog-4.0.2-py3-none-manylinux2014_x86_64.whl.metadata (38 kB)\n","Requirement already satisfied: entrypoints in /usr/local/lib/python3.10/dist-packages (from altair<6,>=4.0->streamlit) (0.4)\n","Requirement already satisfied: jinja2 in /usr/local/lib/python3.10/dist-packages (from altair<6,>=4.0->streamlit) (3.1.4)\n","Requirement already satisfied: jsonschema>=3.0 in /usr/local/lib/python3.10/dist-packages (from altair<6,>=4.0->streamlit) (4.23.0)\n","Requirement already satisfied: toolz in /usr/local/lib/python3.10/dist-packages (from altair<6,>=4.0->streamlit) (0.12.1)\n","Collecting gitdb<5,>=4.0.1 (from gitpython!=3.1.19,<4,>=3.0.7->streamlit)\n"," Downloading gitdb-4.0.11-py3-none-any.whl.metadata (1.2 kB)\n","Requirement already satisfied: python-dateutil>=2.8.2 in /usr/local/lib/python3.10/dist-packages (from pandas<3,>=1.3.0->streamlit) (2.8.2)\n","Requirement already satisfied: pytz>=2020.1 in /usr/local/lib/python3.10/dist-packages (from pandas<3,>=1.3.0->streamlit) (2024.1)\n","Requirement already satisfied: tzdata>=2022.1 in /usr/local/lib/python3.10/dist-packages (from pandas<3,>=1.3.0->streamlit) (2024.1)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.27->streamlit) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.27->streamlit) (3.8)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.27->streamlit) (2.0.7)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests<3,>=2.27->streamlit) (2024.7.4)\n","Requirement already satisfied: markdown-it-py>=2.2.0 in /usr/local/lib/python3.10/dist-packages (from rich<14,>=10.14.0->streamlit) (3.0.0)\n","Requirement already satisfied: pygments<3.0.0,>=2.13.0 in /usr/local/lib/python3.10/dist-packages (from rich<14,>=10.14.0->streamlit) (2.16.1)\n","Collecting smmap<6,>=3.0.1 (from gitdb<5,>=4.0.1->gitpython!=3.1.19,<4,>=3.0.7->streamlit)\n"," Downloading smmap-5.0.1-py3-none-any.whl.metadata (4.3 kB)\n","Requirement already satisfied: MarkupSafe>=2.0 in /usr/local/lib/python3.10/dist-packages (from jinja2->altair<6,>=4.0->streamlit) (2.1.5)\n","Requirement already satisfied: attrs>=22.2.0 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6,>=4.0->streamlit) (24.2.0)\n","Requirement already satisfied: jsonschema-specifications>=2023.03.6 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6,>=4.0->streamlit) (2023.12.1)\n","Requirement already satisfied: referencing>=0.28.4 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6,>=4.0->streamlit) (0.35.1)\n","Requirement already satisfied: rpds-py>=0.7.1 in /usr/local/lib/python3.10/dist-packages (from jsonschema>=3.0->altair<6,>=4.0->streamlit) (0.20.0)\n","Requirement already satisfied: mdurl~=0.1 in /usr/local/lib/python3.10/dist-packages (from markdown-it-py>=2.2.0->rich<14,>=10.14.0->streamlit) (0.1.2)\n","Requirement already satisfied: six>=1.5 in /usr/local/lib/python3.10/dist-packages (from python-dateutil>=2.8.2->pandas<3,>=1.3.0->streamlit) (1.16.0)\n","Downloading streamlit-1.38.0-py2.py3-none-any.whl (8.7 MB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m8.7/8.7 MB\u001b[0m \u001b[31m62.3 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading GitPython-3.1.43-py3-none-any.whl (207 kB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m207.3/207.3 kB\u001b[0m \u001b[31m13.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pydeck-0.9.1-py2.py3-none-any.whl (6.9 MB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m6.9/6.9 MB\u001b[0m \u001b[31m68.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading tenacity-8.5.0-py3-none-any.whl (28 kB)\n","Downloading watchdog-4.0.2-py3-none-manylinux2014_x86_64.whl (82 kB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m82.9/82.9 kB\u001b[0m \u001b[31m5.6 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading gitdb-4.0.11-py3-none-any.whl (62 kB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m62.7/62.7 kB\u001b[0m \u001b[31m4.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading smmap-5.0.1-py3-none-any.whl (24 kB)\n","Installing collected packages: watchdog, tenacity, smmap, pydeck, gitdb, gitpython, streamlit\n"," Attempting uninstall: tenacity\n"," Found existing installation: tenacity 9.0.0\n"," Uninstalling tenacity-9.0.0:\n"," Successfully uninstalled tenacity-9.0.0\n","Successfully installed gitdb-4.0.11 gitpython-3.1.43 pydeck-0.9.1 smmap-5.0.1 streamlit-1.38.0 tenacity-8.5.0 watchdog-4.0.2\n"]}]},{"cell_type":"code","source":["df.drop(['Unnamed: 0'], axis=1, inplace=True)"],"metadata":{"id":"zHjcuMzpLrhD","executionInfo":{"status":"ok","timestamp":1725030342013,"user_tz":-180,"elapsed":21,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":11,"outputs":[]},{"cell_type":"code","source":["df.to_csv('labeled_data.csv', index=False)"],"metadata":{"id":"QJKDUHSiIGHY","executionInfo":{"status":"ok","timestamp":1725030342013,"user_tz":-180,"elapsed":19,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":12,"outputs":[]},{"cell_type":"code","source":["df = pd.read_csv('labeled_data.csv')"],"metadata":{"id":"jJt14bpLIeZ3","executionInfo":{"status":"ok","timestamp":1725030342014,"user_tz":-180,"elapsed":18,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":13,"outputs":[]},{"cell_type":"code","source":["df"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":528},"id":"vCGKnkTjLcsS","executionInfo":{"status":"ok","timestamp":1725030342405,"user_tz":-180,"elapsed":408,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"632ab99c-0c8a-4562-8b43-99258e0fcb05"},"execution_count":14,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" count hate_speech offensive_language neither class \\\n","0 3 0 0 3 2 \n","1 3 0 3 0 1 \n","2 3 0 3 0 1 \n","3 3 0 2 1 1 \n","4 6 0 6 0 1 \n","... ... ... ... ... ... \n","24778 3 0 2 1 1 \n","24779 3 0 1 2 2 \n","24780 3 0 3 0 1 \n","24781 6 0 6 0 1 \n","24782 3 0 0 3 2 \n","\n"," tweet \n","0 !!! RT @mayasolovely: As a woman you shouldn't... \n","1 !!!!! RT @mleew17: boy dats cold...tyga dwn ba... \n","2 !!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby... \n","3 !!!!!!!!! RT @C_G_Anderson: @viva_based she lo... \n","4 !!!!!!!!!!!!! RT @ShenikaRoberts: The shit you... \n","... ... \n","24778 you's a muthaf***in lie “@LifeAsKing: @2... \n","24779 you've gone and broke the wrong heart baby, an... \n","24780 young buck wanna eat!!.. dat nigguh like I ain... \n","24781 youu got wild bitches tellin you lies \n","24782 ~~Ruffled | Ntac Eileen Dahlia - Beautiful col... \n","\n","[24783 rows x 6 columns]"],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
counthate_speechoffensive_languageneitherclasstweet
030032!!! RT @mayasolovely: As a woman you shouldn't...
130301!!!!! RT @mleew17: boy dats cold...tyga dwn ba...
230301!!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby...
330211!!!!!!!!! RT @C_G_Anderson: @viva_based she lo...
460601!!!!!!!!!!!!! RT @ShenikaRoberts: The shit you...
.....................
2477830211you's a muthaf***in lie &#8220;@LifeAsKing: @2...
2477930122you've gone and broke the wrong heart baby, an...
2478030301young buck wanna eat!!.. dat nigguh like I ain...
2478160601youu got wild bitches tellin you lies
2478230032~~Ruffled | Ntac Eileen Dahlia - Beautiful col...
\n","

24783 rows × 6 columns

\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n"," \n"," \n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df","summary":"{\n \"name\": \"df\",\n \"rows\": 24783,\n \"fields\": [\n {\n \"column\": \"count\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 3,\n \"max\": 9,\n \"num_unique_values\": 5,\n \"samples\": [\n 6,\n 7,\n 9\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"hate_speech\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 7,\n \"num_unique_values\": 8,\n \"samples\": [\n 1,\n 6,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"offensive_language\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 9,\n \"num_unique_values\": 10,\n \"samples\": [\n 8,\n 3,\n 7\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"neither\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 1,\n \"min\": 0,\n \"max\": 9,\n \"num_unique_values\": 10,\n \"samples\": [\n 8,\n 0,\n 4\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"class\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 0,\n \"min\": 0,\n \"max\": 2,\n \"num_unique_values\": 3,\n \"samples\": [\n 2,\n 1,\n 0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tweet\",\n \"properties\": {\n \"dtype\": \"string\",\n \"num_unique_values\": 24783,\n \"samples\": [\n \"934 8616\\ni got a missed call from yo bitch\",\n \"RT @KINGTUNCHI_: Fucking with a bad bitch you gone need some money lil homie!\",\n \"RT @eanahS__: @1inkkofrosess lol my credit ain't no where near good , but I know the right man for the job .. that ho nice though!\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":14}]},{"cell_type":"code","source":["df.info()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"um_1Ms8PLeFj","executionInfo":{"status":"ok","timestamp":1725030342406,"user_tz":-180,"elapsed":28,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"d243671d-a0e8-4426-81dd-4e6c80597d2b"},"execution_count":15,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","RangeIndex: 24783 entries, 0 to 24782\n","Data columns (total 6 columns):\n"," # Column Non-Null Count Dtype \n","--- ------ -------------- ----- \n"," 0 count 24783 non-null int64 \n"," 1 hate_speech 24783 non-null int64 \n"," 2 offensive_language 24783 non-null int64 \n"," 3 neither 24783 non-null int64 \n"," 4 class 24783 non-null int64 \n"," 5 tweet 24783 non-null object\n","dtypes: int64(5), object(1)\n","memory usage: 1.1+ MB\n"]}]},{"cell_type":"code","source":["df.describe(include='all')"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":412},"id":"oXPErhbNOUAk","executionInfo":{"status":"ok","timestamp":1725030342406,"user_tz":-180,"elapsed":23,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"83e7539b-dbf7-4f3e-9f5b-548212e91a05"},"execution_count":16,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" count hate_speech offensive_language neither \\\n","count 24783.000000 24783.000000 24783.000000 24783.000000 \n","unique NaN NaN NaN NaN \n","top NaN NaN NaN NaN \n","freq NaN NaN NaN NaN \n","mean 3.243473 0.280515 2.413711 0.549247 \n","std 0.883060 0.631851 1.399459 1.113299 \n","min 3.000000 0.000000 0.000000 0.000000 \n","25% 3.000000 0.000000 2.000000 0.000000 \n","50% 3.000000 0.000000 3.000000 0.000000 \n","75% 3.000000 0.000000 3.000000 0.000000 \n","max 9.000000 7.000000 9.000000 9.000000 \n","\n"," class tweet \n","count 24783.000000 24783 \n","unique NaN 24783 \n","top NaN !!! RT @mayasolovely: As a woman you shouldn't... \n","freq NaN 1 \n","mean 1.110277 NaN \n","std 0.462089 NaN \n","min 0.000000 NaN \n","25% 1.000000 NaN \n","50% 1.000000 NaN \n","75% 1.000000 NaN \n","max 2.000000 NaN "],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
counthate_speechoffensive_languageneitherclasstweet
count24783.00000024783.00000024783.00000024783.00000024783.00000024783
uniqueNaNNaNNaNNaNNaN24783
topNaNNaNNaNNaNNaN!!! RT @mayasolovely: As a woman you shouldn't...
freqNaNNaNNaNNaNNaN1
mean3.2434730.2805152.4137110.5492471.110277NaN
std0.8830600.6318511.3994591.1132990.462089NaN
min3.0000000.0000000.0000000.0000000.000000NaN
25%3.0000000.0000002.0000000.0000001.000000NaN
50%3.0000000.0000003.0000000.0000001.000000NaN
75%3.0000000.0000003.0000000.0000001.000000NaN
max9.0000007.0000009.0000009.0000002.000000NaN
\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","summary":"{\n \"name\": \"df\",\n \"rows\": 11,\n \"fields\": [\n {\n \"column\": \"count\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8760.844908191184,\n \"min\": 0.8830600691421232,\n \"max\": 24783.0,\n \"num_unique_values\": 5,\n \"samples\": [\n 3.2434733486664244,\n 9.0,\n 0.8830600691421232\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"hate_speech\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.714374693967,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 5,\n \"samples\": [\n 0.28051486906347095,\n 7.0,\n 0.6318510592276959\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"offensive_language\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.062853899848,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 7,\n \"samples\": [\n 24783.0,\n 2.413711011580519,\n 3.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"neither\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.575679681884,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 5,\n \"samples\": [\n 0.5492474680224347,\n 9.0,\n 1.1132985222300682\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"class\",\n \"properties\": {\n \"dtype\": \"number\",\n \"std\": 8761.781742989286,\n \"min\": 0.0,\n \"max\": 24783.0,\n \"num_unique_values\": 6,\n \"samples\": [\n 24783.0,\n 1.1102772061493766,\n 2.0\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n },\n {\n \"column\": \"tweet\",\n \"properties\": {\n \"dtype\": \"category\",\n \"num_unique_values\": 3,\n \"samples\": [\n \"24783\",\n \"!!! RT @mayasolovely: As a woman you shouldn't complain about cleaning up your house. & as a man you should always take the trash out...\",\n \"1\"\n ],\n \"semantic_type\": \"\",\n \"description\": \"\"\n }\n }\n ]\n}"}},"metadata":{},"execution_count":16}]},{"cell_type":"code","source":["# prompt: write plotly code to genrate graphs that descripe the dataset the class is [hate_speech - offensive_language - Neither]\n","\n","import plotly.express as px\n","\n","# Count the occurrences of each class\n","class_counts = df['class'].value_counts()\n","\n","# Create a bar chart\n","fig_bar = px.bar(x=class_counts.index, y=class_counts.values,\n"," labels={'x': 'Class', 'y': 'Count'},\n"," title='Distribution of Classes')\n","fig_bar.show()\n","\n","# Create a pie chart\n","fig_pie = px.pie(names=class_counts.index, values=class_counts.values,\n"," title='Proportion of Classes')\n","fig_pie.show()\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":1000},"id":"AmXikWq8Oj2O","executionInfo":{"status":"ok","timestamp":1725030344667,"user_tz":-180,"elapsed":2279,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"4011880e-ede3-4cdf-ce87-9fcd62f3a027"},"execution_count":17,"outputs":[{"output_type":"display_data","data":{"text/html":["\n","\n","\n","
\n","
\n","\n",""]},"metadata":{}},{"output_type":"display_data","data":{"text/html":["\n","\n","\n","
\n","
\n","\n",""]},"metadata":{}}]},{"cell_type":"code","source":["# prompt: convert plotely to streamlit\n","\n","import streamlit as st\n","\n","st.title('Hate Speech and Offensive Language Analysis')\n","\n","# Bar chart\n","st.subheader('Distribution of Classes (Bar Chart)')\n","st.plotly_chart(fig_bar)\n","\n","# Pie chart\n","st.subheader('Proportion of Classes (Pie Chart)')\n","st.plotly_chart(fig_pie)\n"],"metadata":{"id":"UnFTkx66P48O","colab":{"base_uri":"https://localhost:8080/"},"executionInfo":{"status":"ok","timestamp":1725030345912,"user_tz":-180,"elapsed":1264,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"e863dd06-c986-4f70-c9fa-17585aaa0462"},"execution_count":18,"outputs":[{"output_type":"stream","name":"stderr","text":["2024-08-30 15:05:44.878 WARNING streamlit.runtime.scriptrunner_utils.script_run_context: Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.259 \n"," \u001b[33m\u001b[1mWarning:\u001b[0m to view this Streamlit app on a browser, run it with the following\n"," command:\n","\n"," streamlit run /usr/local/lib/python3.10/dist-packages/colab_kernel_launcher.py [ARGUMENTS]\n","2024-08-30 15:05:45.266 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.269 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.271 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.277 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.279 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.282 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.284 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.286 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.291 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.294 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n","2024-08-30 15:05:45.297 Thread 'MainThread': missing ScriptRunContext! This warning can be ignored when running in bare mode.\n"]},{"output_type":"execute_result","data":{"text/plain":["DeltaGenerator()"]},"metadata":{},"execution_count":18}]},{"cell_type":"code","source":["df.columns"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"lWLN76PKSUEX","executionInfo":{"status":"ok","timestamp":1725030345913,"user_tz":-180,"elapsed":20,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"1ae7b6db-8d2f-4ef0-ab3c-a4e5d3c82292"},"execution_count":19,"outputs":[{"output_type":"execute_result","data":{"text/plain":["Index(['count', 'hate_speech', 'offensive_language', 'neither', 'class',\n"," 'tweet'],\n"," dtype='object')"]},"metadata":{},"execution_count":19}]},{"cell_type":"code","source":["# prompt: draw histogram for class\n","\n","import matplotlib.pyplot as plt\n","plt.figure(figsize=(8, 6))\n","plt.hist(df['class'], bins=3, edgecolor='black')\n","plt.xlabel('Class')\n","plt.ylabel('Frequency')\n","plt.title('Distribution of Classes')\n","plt.xticks([0, 1, 2], ['Hate Speech', 'Offensive Language', 'Neither'])\n","plt.show()\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":573},"id":"dla4Zg5bTrfL","executionInfo":{"status":"ok","timestamp":1725030346357,"user_tz":-180,"elapsed":456,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"2d60915c-67bb-4bd2-a81a-a25773dd34c1"},"execution_count":20,"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"iVBORw0KGgoAAAANSUhEUgAAAtUAAAIsCAYAAAA9LlW6AAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjcuMSwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/bCgiHAAAACXBIWXMAAA9hAAAPYQGoP6dpAABmVUlEQVR4nO3deVwV9f7H8fcBPAjqQTCX3IUCd0BLJRD3VLRsN1MzJbSsSNN7Ja+a3ZtpXbdcyg3NLE0rsyxc0lTKLCspM7tqQqaWS6IcEJDt/P7wwfw8oYYMssTr+Xj4oDPzme/3O3QY3mf4zozF4XA4BAAAAKDIXEp7AAAAAEB5R6gGAAAATCJUAwAAACYRqgEAAACTCNUAAACASYRqAAAAwCRCNQAAAGASoRoAAAAwiVANAAAAmESoBoA/mTt3rgICAkqkr8GDB2vw4MHG66+++koBAQHauHFjifQfExOjrl27lkhfRXX+/Hn961//UmhoqAICAjRlypRiaXft2rUKCAjQsWPHiqU9ABWbW2kPAACup7Vr1+rZZ581XlutVnl5eSkgIECdOnXSPffco6pVq5ru5+TJk1qzZo26d++uZs2amW6vOJXlsRXGwoUL9f7772vkyJFq0KCB/Pz8rlqfm5urdevWad26dTpw4IDS09NVq1YttW/fXg899JBatWpVQiMHUJEQqgFUCNHR0apfv75ycnL0xx9/aPfu3XrxxRf1+uuv69VXX1XTpk2N2scff1zDhw+/pvZPnTqlefPmqV69etcUXGNjY6+pn6K42tj+85//yOFwXPcxmPHll18qMDBQTz755F/WZmZm6sknn9Rnn32mW2+9VSNGjJCXl5eOHz+uDRs26P3339f27dtVp06dEhg5gIqEUA2gQggPD3c6QzlixAjt2rVLjz32mEaOHKm4uDhVrlxZkuTm5iY3t+t7eMzIyJCHh4esVut17eevVKpUqVT7L4wzZ87opptuKlTtyy+/rM8++0zPPvusHnnkEad1Tz75pF5//fXiHyAAiDnVACqwkJAQjRw5UsePH9eHH35oLL/cnOqdO3dqwIABuuWWWxQcHKyePXtq5syZki7Og77vvvskSc8++6wCAgIUEBCgtWvXSro4b7pv377at2+fBg4cqMDAQGPbP8+pzpeXl6eZM2cqNDRUQUFBeuyxx/T777871XTt2lUxMTEFtr20zb8a2+XmVKenp2vatGnq1KmTWrZsqZ49eyo2NrbAGe2AgAD9+9//1pYtW9S3b1+1bNlSffr0UXx8/NW+7YYzZ85o/Pjxuu2229SqVSvdeeedev/99431+fPLjx07pu3btxtjv9Ic6BMnTmj16tUKDQ0tEKglydXVVZGRkVc9S71lyxYNHz5cYWFhatmypbp376758+crNzfXqe6XX37RU089pdDQULVq1Urh4eEaPXq0UlNTjZqrvWfyZWVlac6cOerRo4datmypTp066eWXX1ZWVpZTXWHaAlC6OFMNoELr16+fZs6cqc8//1wPPPDAZWsOHTqkESNGKCAgQNHR0bJarTpy5Ij27NkjSfLz81N0dLTmzJmj/v37q23btpKkNm3aGG2cO3dOUVFR6tOnj+68807VqFHjquN67bXXZLFYFBUVpTNnzmj58uV65JFH9MEHHxhn1AujMGO7lMPh0OOPP26E8WbNmumzzz7Tyy+/rJMnT2r8+PFO9d9++602b96shx56SFWqVNGKFSsUHR2tbdu2ydvb+4rjyszM1ODBg/Xrr79q4MCBql+/vjZu3KiYmBjZ7XYNGTJEfn5+evnllzV16lTVqVNHQ4cOlST5+Phcts34+Hjl5OTozjvvLPT358/ef/99eXp6aujQofL09NSXX36pOXPmKC0tTePGjZN0MQhHRkYqKytLgwYN0g033KCTJ09q+/btstvtqlat2l++Z6SLH5wef/xxffvtt3rggQfk5+engwcPavny5frll1/06quvSvrr9x+AsoFQDaBCq1OnjqpVq6ajR49esWbnzp3Kzs7W4sWLLxvobrjhBoWHh2vOnDkKCgpSv379CtScPn1azz//vB588MFCjSslJUVxcXHGRZTNmzfXqFGjtGbNGj388MOF3LvCje1SW7du1ZdffqlRo0bp8ccflyQNHDhQ0dHReuONNzRo0CA1bNjQqD98+LDi4uKMZe3bt1e/fv308ccfa9CgQVfsZ/Xq1Tp8+LD++9//GiH4wQcf1ODBgzV79mzde++9uuGGG9SvXz+98sorql279l+O/fDhw5Jk6s4tM2bMcPrQMmDAAE2aNEmrVq3S6NGjZbVadfjwYR07dkyvvPKKevXqZdReOuf7r94zkrR+/Xp98cUXWrFihW655RZj+c0336znnntOe/bsUZs2bQrVFoDSx/QPABWep6enzp8/f8X1NptN0sXAmZeXV6Q+rFar7rnnnkLX33XXXU53JenVq5dq1qypHTt2FKn/woqPj5erq2uBKSnDhg2Tw+EoMLXjtttucwrZTZs2VdWqVa/6ISW/n5o1a6pv377GskqVKmnw4MFKT0/X119/fc1jT0tLkyRVqVLlmrfNd2mgTktLU3Jysm655RZlZGQoMTFRkoz/L59//rkyMjIu205h3jMbN26Un5+ffH19lZycbPzr0KGDpIvTXwrbFoDSx5lqABVeenr6VadjRERE6J133tGECRM0Y8YMhYSEqEePHurVq5dcXAp3bqJ27drXdFFio0aNnF5bLBY1atRIx48fL3QbRXH8+HHVqlWrwG0G829j9+f+b7zxxgJteHl5yW63/2U/jRo1KvD9y+/nt99+u+ax54/5ah+Q/sqhQ4c0e/Zsffnll0ZIz5c/X7pBgwYaOnSoli1bpvXr1+uWW25R165ddeedd6patWqSCveeOXLkiA4fPqyQkJDLjuXMmTOFbgtA6SNUA6jQTpw4odTUVKezrX9WuXJlvfXWW/rqq6+0fft2ffbZZ4qLi9Pq1au1dOlSubq6/mU/1zIP2qzc3NxCjak4XKmf0rhNn6+vryTpwIEDRboft91u16BBg1S1alVFR0erYcOGcnd3148//qjp06c7nSWOiYnR3Xffra1bt2rnzp164YUXtHDhQq1Zs0Z16tQp1HsmLy9P/v7+TvdRv1T+BZXF8f4DcP3xERdAhfbBBx9IksLCwq5a5+LiopCQED377LOKi4vT6NGj9eWXXxp/ordYLMU6riNHjji9djgcOnLkiOrVq2csu9IZ4T+f5b2WsdWrV0+nTp0qcJY2f+rDpf2bUa9ePR05cqTAdIb8furWrXvNbYaHh8vV1VXr168v0ph2796tc+fOadq0aRoyZIi6dOmi2267TV5eXpetDwgI0MiRI/XWW2/prbfe0smTJ7Vq1Spj/V+9Zxo2bKiUlBSFhITotttuK/Av/0NCYdoCUPoI1QAqrF27dunVV19V/fr1r3rHiHPnzhVYln8mNP/WZx4eHpL0l9MeCmvdunVOwXbjxo06ffq0wsPDjWUNGjTQ999/73T7tW3bthW49d61jC08PFy5ubl66623nJa//vrrslgsTv2bER4ertOnTysuLs5YlpOToxUrVsjT01O33nrrNbd544036v7779fnn3+uFStWFFifl5enpUuX6sSJE5fdPn8qxaVn2bOysrRy5UqnurS0NOXk5Dgt8/f3l4uLi/H/ojDvmd69extPu/yzzMxMpaenF7otAKWP6R8AKoT4+HglJiYqNzdXf/zxh7766ivt3LlTdevW1WuvvSZ3d/crbjt//nx988036tSpk+rVq6czZ85o5cqVqlOnjnGLuoYNG8pms+ntt99WlSpV5OnpqdatW6tBgwZFGq+Xl5ceeugh3XPPPcYt9Ro1auR027/7779fmzZt0qOPPqrevXvr119/1fr16wtMZbmWsXXt2lXt27fXrFmzdPz4cQUEBGjnzp3aunWrhgwZctVpMteif//+Wr16tWJiYvTjjz+qXr162rRpk/bs2aPx48cX+dHxMTExOnr0qF544QVt3rxZXbp0kc1m0++//66NGzcqMTFRffr0uey2wcHB8vLyUkxMjAYPHiyLxaIPPvigwFSWL7/8Uv/+97/Vq1cvNW7cWLm5ufrggw/k6uqqnj17Sirce6Zfv37asGGDnnvuOX311Vdq06aNcnNzlZiYqI0bN2rJkiVq1apVodoCUPoI1QAqhDlz5ki6eIeJ6tWry9/fX+PHj9c999zzlwGua9euOn78uN577z2dPXtW3t7eateunZ566injwrRKlSpp2rRpmjlzpiZPnqycnBxNnTq1yKH6scce04EDB7Ro0SKdP39eISEheu6554yzzpLUsWNHxcTEaNmyZXrxxRfVsmVLLViwQC+99JJTW9cyNhcXF7322muaM2eO4uLitHbtWtWrV0///Oc/NWzYsCLty+VUrlxZK1as0PTp0/X+++8rLS1NTZo00dSpU6/pLil/5uHhocWLF2vt2rVat26dXn31VWVmZqpWrVpq3769pk+frtq1a192W29vb+P7N3v2bNlsNt15550KCQlRZGSkURcQEKCwsDBt27ZNJ0+elIeHhwICArR48WIFBQVJKtx7xsXFRfPnz9frr7+uDz74QJ988ok8PDxUv359DR48WE2aNCl0WwBKn8VRGleTAAAAAH8jzKkGAAAATCJUAwAAACYRqgEAAACTCNUAAACASYRqAAAAwKQyFao3bNigxx9/XOHh4QoKClK/fv307rvvFrhH6DvvvKOePXuqVatWuvPOO7Vt27YCbaWmpmr8+PFq166d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rlhjt9s1efJkhYWFqWXLlrrnnnv0+eefO9VcesyaO3eu5s2bp/T0dCMvXXoclaQDBw5owIABCgwMVN++ffXZZ58V6Lewx9uEhAQNHTpUQUFBevnllwu974TqIsjJySnw73Jngc+cOaMRI0Zo4cKF+te//qXjx49r8ODBysnJkXTxTxvNmzdXmzZttHr1aq1evVr333+/JGnjxo16/PHH5e/vr3nz5ukf//iHPvnkE/3rX/+66thatGihhIQEzZ49W4cPH75q7enTp/X8888rMjJSs2fPltVqVWRkpM6cOWPULFu2TBMmTFBYWJgWLFigqKgovfHGG5o1a5ZRk5KSooceekj/+9//NHHiRM2dO1ceHh4aMmSIU1tLlizRuHHj1KJFC82bN09TpkxRo0aNCsyhHjt2rMLCwjR//nw1a9ZMMTExf7kvwPWQk5OjhIQEtW/f/rLTNapUqaL27dsrISFBOTk5GjlypMaOHStJmjdvnlavXq327dtr9erV8vT01H333afVq1frueeek1S4n698V/u5SEtL04gRI1S1alXNnDlTr776qh544IErztu+9dZbVatWLcXFxTkt//LLL/XHH3+ob9++kqSjR4/qwQcfVEpKiqZNm6bp06crOTlZjzzyiLKysor+jZX022+/qU2bNpoyZYpee+013X777ZowYYLTB4F8zz33nBo3bqz58+erS5cumj59uuLj4431W7du1XPPPafQ0FDNmzdPISEhGjVqVJHGlZmZqdzcXI0ePVqLFy/W008/ra+//tqYG59vxowZevvtt/Xoo49q1qxZysvLc/owku/pp5/W6tWrNXToUC1cuFAdO3bUP/7xD+3YsaNI4wPKui5duqh58+aaP3/+ZddnZWVp6NCh2r59u0aNGqXXXntNfn5+GjFihA4cOHDZbe6//37dd999qly5spGX8o+jkpSdna2xY8fqnnvu0bx58+Tj46Po6GidPXvWqLmW4+2YMWPUoUMHLViwQP369Sv8zjtQaHPmzHH4+/tf8V9QUNAVt83JyXGcOHHC4e/v7/jss8+M5YMGDXIMHz7cqTYvL8/RpUsXxzPPPOO0fMeOHY6AgADHwYMHr9hPamqqY+jQocaY2rVr53jmmWccX3/9tVPduHHjHP7+/o4vvvjCWGa32x3BwcGO6dOnG20FBQU5ZsyY4bTtypUrHa1bt3YkJyc7HA6H45VXXnG0bdvW8ccffxg1Fy5ccHTu3Nnx0ksvGW0HBgY6Jk6ceMWxv/feew5/f3/Hm2++aSw7f/68IzAw0DF//vwrbgdcL6dOnXL4+/s7pkyZcsWaKVOmOPz9/R2nT592OBwOxyeffOLw9/d3HD161Kmubdu2jjlz5hivC/vzVZifi7179zr8/f0d//vf/644zj8fa1588UVHeHi4Iy8vz1gWExPj6NOnj/H6n//8p6Nbt26OzMxMY9mZM2ccQUFBTuO5HH9/f8eSJUuuWpMvLy/PkZ2d7Zg4caKjf//+xvIvv/zS4e/vbxxH8mu7dOniGD9+vLHs3nvvdTz88MNObc6fP9/h7+/veO+99646pmXLljn8/f2vOLbs7GzHN9984/D393ckJiY6HA6H4+zZs45WrVo55s2b51Q7ZMgQp//3u3btKnDMdzgcjlGjRjnuvffeq35PgPJmzpw5Rg7atGmTw9/f3/H99987HA6H44UXXnB06dLF4XA4HO+++66jefPmjkOHDjltf//99zuio6ON138+Zl3a/p/79ff3d2zfvt1YdvToUYe/v79j3bp1Dofj2o+3CxcuLNL3gDPV16hy5cp69913C/x74IEHCtTu2LFDDz74oNq2bavmzZsrPDxc0sULma4mKSlJx48fV+/evZ3Ohrdr104uLi6XnVaRr2rVqlq6dKneeecdPfHEE2ratKk2bdqkQYMG6Z133nGqrVatmkJCQpxe33bbbcZdQhISEpSenq5evXo5jeO2225TZmamDh06JEnauXOn2rdvLy8vL6PGxcVFt956q/Hn5YSEBGVkZOi+++77y+9xWFiY8d+enp6qW7euTpw48ZfbAeVJYX++8l3t56Jhw4aqWrWqJk+erLi4uELdQadPnz46ceKEvv32W0kXzx5t2bJFffr0MWp27typrl27ytXV1RifzWZT8+bNr3ocKoyUlBS98MIL6tKli1q0aKEWLVpo9erVSkpKKlB76b5bLBb5+fkZ+56bm6uffvqpwJ0FunXrVuSx5U9TCw4OVosWLfTQQw9J+v9j98GDB3XhwoUCffz59c6dO1W9enV16NChwP/jn376qcA0OuDvokePHvL397/s2eqdO3fK399fjRs3LvBz8ecpaYXl4uLilGfq16+vypUr6+TJk5Ku/XjbuXPnIo2DCxWvkYuLi1q1alVg+fbt251e7927VyNHjlS3bt0UFRWlGjVqyGKx6IEHHtCFCxeu2kf+nyueeOKJy67//fff/3KcrVu3VuvWrSVd/BPu4MGDNX36dGN6iST5+PgU2K5GjRrGn5Tzx3H33XdfdRxnz57Vd999pxYtWhSoadiwoSTp3LlzkqRatWr95dirVavm9LpSpUqm/9QMFIW3t7esVutVf+Z+//13ubu7q3r16tfUdmF/vvJd7efCy8tLy5Yt05w5c/TPf/5Tubm5uuWWWzRhwgSn+cKXat26tRo2bKiPPvpIt9xyi+Lj42W3242pH/ljXL58uTFn/M/9mxETE6OEhAQ98cQTuummm1S1alWtWrVKGzZsKFB7uX3Pn+OcnJysnJycAsezGjVqFGlcn3zyicaNG6f+/ftr9OjRql69uk6fPq0nnnjCOHafPn1akow7u1ypz7Nnz+rcuXOXPTbmt1OnTp0ijRMoyywWix577DE988wz+vHHH53WnT17Vvv377/sz8XlrgcrjMqVK8tqtTotq1SpkvEze63H2xtuuKFI4yBUXydbtmxR1apVNXv2bOMCwT9fkHcl+b+cJ02aZATjSxUmmF6qQYMG6tWrl5YtW6Y//vjDeLNc7mzWmTNnVLNmTUkXf1FLF+eGXu7AX79+faOuY8eOevrppwvU5L/J8/fp1KlT/BJBueHm5qbg4GDt3r1b6enp8vT0dFqfnp6u3bt3Kzg4WG5u13Y4LezPV2G1bt1aS5YsUWZmpr766iu99NJLeuKJJ7Rly5YrbtOnTx+tXr1aEyZMUFxcnAIDA53uWOLl5aVOnToZZ2ovZeaWgBcuXND27dsVExPjdLHRypUrr7ktHx8fubm5FTieXXo9Rz6r1ars7GynZX+ed75x40Y1a9ZM//73v41lu3fvdqrJP0aePXtWtWvXvmKfXl5e8vHx0aJFi644duDvqnfv3po7d65effVV1a1b11ju5eWlgIAATZkypcTGUtzH2yshVF8nmZmZqlSpkiwWi7Hscld8X/pJKp+vr6/q1Kmjo0ePXvYm6ldzaWi+1C+//CKr1SqbzWYsS01N1a5du4w/maSmpuqLL74w+gwODpaHh4dOnDihHj16XLHP2267TR9++KH8/PwKhI58+W299957l/2gAJRVQ4YM0ciRI7V06VI9+eSTTuuWLl2qc+fOaciQIdfcbmF/vq5V5cqV1alTJ/3666+aMmWKLly4IHd398vW9u3bV6+99po+/fRTffrppxo9erTT+pCQEB06dEjNmzcv8hmky8nKylJeXp7T2e60tDR9+umn19yWq6urmjVrpq1btzr9f7jch4k6deoUuOj5iy++cHqdf+y+1J+P3TfffLPc3d21ZcsWNW3a9Ip93nbbbVqyZIkqVarkVAdUBC4uLnrssccUExOjdu3aGctvu+027dixQ7Vq1XL6UPpXzPzV+nodb/+MUH2dhIaGavny5frPf/6jHj16KCEhQR988EGBOl9fX61bt06ffvqpatasabzJYmJiNHbsWKWnp6tz587y8PDQb7/9ph07dmj06NFq0qTJZfudMGGCcnNzdfvtt6tx48ZKS0vTpk2btG3bNg0ZMsTpzyPVq1fXv/71L0VHR6tatWpavHixHA6H8YvJZrMpOjpa//3vf3XixAm1a9dOrq6uOnr0qLZu3Wrc5eORRx7R+vXrNWjQID388MOqW7eukpOT9f3336t27dp65JFHVK1aNT3xxBOaPn26HA6HunXrpry8PH311Vfq06fPZafUAGVBt27dNGjQIM2bN08nTpxQr169JEmbN2/WmjVrNGjQoGt+UphU+J+vwti+fbveffddde/eXXXr1tUff/yhN998U23atLlioJYu3gc2ICBA//nPf3ThwgVFREQ4rY+OjtZ9992nyMhIPfDAA7rhhhv0xx9/aPfu3brlllucpopczsGDB7Vx40anZZ6engoPD1erVq20ePFi40zzokWLVLVq1SI9UfXxxx/XyJEjNWHCBPXq1Uv79+83bs936a1Ee/bsqeXLl6tVq1Zq0qSJPvzwQ2POZb7bbrtN//73vzV//nwFBwdrx44d2rVrl1ONt7e3BgwYoAULFsjd3V3NmjXTxo0bjTnX+X2GhoaqS5cuevTRR/Xoo48qICBAGRkZ+vnnn3XkyJESPVMHlIY77rhD8+fP11dffaV69epJku666y69/fbbevjhhzVs2DA1btxYqamp2r9/v7KzszVmzJjLtuXn56ecnBwtX75cwcHBqlq1qnx9fQs1juI83l4Nofo66dSpk8aOHas333xTa9euVZs2bbRw4UL17NnTqS4qKkq//vqrxo0bJ7vdbjxgonfv3rLZbFqwYIFxlqRevXrq2LHjVef6DBw4UOvWrdPChQt1+vRpVa5cWQ0bNtSUKVMKzCWqWbOmxo4dq5dfflm//vqrbr75ZsXGxjq1P2zYMNWuXVvLli3Tm2++KTc3NzVs2FCdO3c2zuZ4e3tr9erVmj17tqZPn65z586pRo0aCgwMdPpEGBUVJR8fH73++utau3atqlSpouDg4CLPfQRKysSJExUYGKiVK1caD4Dx9/fXtGnTdNdddxW53cL8fBVGw4YN5eLiotmzZ+vMmTOqXr26wsLC9Mwzz/zltn379tWMGTMUEhJiTGvI16hRI73zzjuaPXu2nn/+eaWnp6tmzZq69dZbrzhX+1Lr1q0rcO/phg0b6pNPPtGMGTM0adIkxcTEqHr16ho8eLDS09O1dOnSQu93vm7dumny5MlauHChPvzwQwUGBmry5MkaNmyYqlatatSNHDlSZ86c0fz582WxWNS/f389/PDDmjZtmlHz4IMP6tixY3rzzTcVGxursLAwzZgxo8DF6GPGjFFOTo4WLVqkvLw89ejRQ8OHD9e///1vpzngc+bM0aJFi7Rq1SodP35c1apV080336x77rnnmvcTKG9cXV01fPhwTZgwwVhmtVr1xhtvaO7cuVqwYIFOnz6t6tWrq3nz5pedapavS5cueuihh7Ro0SKdOXNGt956q1asWFHosRTX8fZqLA6Hw1EsLaFciYmJ0b59+/TRRx+V9lAAoNi98847mjBhgrZu3Vps8yX/yj/+8Q99++23RZrGAqD840w1AKBcO3funObNm6cOHTqoSpUq+uGHH7RgwQJ169btugXq3bt3a8+ePWrRooXy8vK0fft2rV+/XjExMdelPwBlH6EaAFCuubm56ejRo/roo4+Umpoqb29v9evXz3i65fXg6emp7du3a/Hixbpw4YLq1aunmJgYPfLII9etTwBlG9M/AAAAAJN4oiIAAABgEqEaAAAAMIlQDQAAAJhEqAYAAABMIlQDAAqla9eu3DIOAK6AW+oBAPTrr79qyZIl2rlzp06dOqVKlSrJ399fvXv3Vv/+/VW5cuXSHiIAlGmEagCo4LZv366nn35aVqtV/fr1k7+/v7Kzs/Xtt9/qv//9r37++Wf95z//Ke1hAkCZRqgGgArs6NGjGj16tOrWravly5erVq1axrqBAwfqyJEj2r59e+kNEADKCUI1AFRgS5YsUXp6uqZMmeIUqPM1atRIQ4YMuey2586d08KFC/X555/r2LFjslgsatOmjcaOHaumTZs61a5YsUJvv/22jh07JqvVqgYNGmjo0KG64447JElpaWl65ZVXtHXrVp06dUrVqlVT06ZNNXbsWLVo0aL4dxwAihmhGgAqsG3btqlBgwZq06bNNW979OhRbdmyRb169VL9+vX1xx9/aPXq1Ro0aJA+/vhj1a5dW5K0Zs0avfDCC+rZs6cefvhhXbhwQQcOHND3339vhOrnnntOmzZt0qBBg+Tn56dz587p22+/1eHDhwnVAMoFQjUAVFBpaWk6efKkunXrVqTtAwICtGnTJrm4/P+NpPr166fevXvr3Xff1RNPPCHp4pztm2++WXPmzLliWzt27NADDzzgdHeRqKioIo0LAEoDt9QDgAoqLS1NklSlSpUibW+1Wo1AnZubq7Nnz8rT01NNmjTR/v37jTqbzaYTJ05o7969V2zLZrPp+++/18mTJ4s0FgAobZypBoAKqmrVqpKk8+fPF2n7vLw8vfHGG1q5cqWOHTum3NxcY1316tWN/46KitIXX3yh+++/X40aNVJoaKj69u2rtm3bGjVjx45VTEyMOnfurBYtWqhTp06666671KBBg6LtHACUMM5UA0AFVbVqVdWqVUuHDh0q0vYLFizQ1KlTdcstt+i///2vYmNjtWzZMt18881yOBxGnZ+fnzZu3KhZs2apbdu22rx5sx566CGn6SARERHasmWLJkyYoFq1aik2NlZ9+vTRjh07TO8nAJQEi+PSIx8AoEKZNGmSVq9erbffflvBwcFXre3atavatWunadOmSbo4f9rLy0tvvPGGU114eLgaNWqkFStWXLadrKwsPfXUU/rss8+UkJAgd3f3AjVnzpzR3XffrXr16mnVqlVF3DsAKDmcqQaACuzRRx+Vp6enJkyYoD/++KPA+l9//VXLly+/7Laurq7683mZDRs2FJgXffbsWafXVqtVfn5+cjgcys7OVm5urlJTU51qatSooVq1aikrK6souwUAJY451QBQgTVs2FDTp0/X6NGjFRERYTxRMSsrSwkJCdq4caPuueeey27buXNnzZ8/X88++6yCg4N18OBBrV+/vsA86MjISN1www1q06aNatSoocTERL355pvq1KmTqlatKrvdrk6dOqlnz55q2rSpPD099cUXX+iHH35wuhsIAJRlTP8AAOiXX35RbGysdu7cqVOnTslqtSogIEB9+vTRAw88IKvVWmD6R1ZWlmbNmqX169crNTVVzZs317hx4zRjxgxJMqZ/rF69WuvXr9ehQ4eUnp6uOnXqqEePHho5cqSqVq2qrKwszZ49Wzt37tTRo0flcDjUsGFD9e/fXw899FCpfU8A4FoQqgEAAACTmFMNAAAAmESoBgAAAEwiVAMAAAAmEaoBAAAAkwjVAAAAgEmEagAAAMAkQjUAAABgEqEaAAAAMIlQDQAAAJhEqAYAAABMIlQDAAAAJhGqAQAAAJMI1QAAAIBJ/wf2u/7RfDUg0wAAAABJRU5ErkJggg==\n"},"metadata":{}}]},{"cell_type":"code","source":["# prompt: draw pie for classes\n","\n","import matplotlib.pyplot as plt\n","# Pie chart, where the slices will be ordered and plotted counter-clockwise:\n","labels = 'Hate Speech', 'Offensive Language', 'Neither'\n","sizes = df['class'].value_counts()\n","explode = (0, 0.1, 0) # only \"explode\" the 2nd slice (i.e. 'Hogs')\n","\n","fig1, ax1 = plt.subplots()\n","ax1.pie(sizes, explode=explode, labels=labels, autopct='%1.1f%%',\n"," shadow=True, startangle=90)\n","ax1.axis('equal') # Equal aspect ratio ensures that pie is drawn as a circle.\n","plt.title('Distribution of Classes')\n","plt.show()\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":428},"id":"CTAM62iuZPX2","executionInfo":{"status":"ok","timestamp":1725030346889,"user_tz":-180,"elapsed":548,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"44e6db2f-bd34-418c-a3bc-ab525018a373"},"execution_count":21,"outputs":[{"output_type":"display_data","data":{"text/plain":["
"],"image/png":"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Vya/UPKjs72SHZfTSeG2TRj9/DD6+ZOYkoZl50ofRTm4OaoPUfX6r3DbLCiugRneev311wkJCeGOO+7weuzOO+8kJCSE119/HYBFixZx3333AXDBBReQlZXF4sWLycrKwmw289xzz5GVlcXChQs911i8eDGXX345+fn5zJgxgyeeeALXCa/t+POLioq46667GDNmDBdddJHXcNrWrVu5+eabGT9+PGPHjuXyyy/nww8/9Dx+4pDWxo0bycrKYvfu3V2u4XK5KCgo4G9/+5vn2MGDB7n//vsZP348Y8aM4Z577uHIkSPn+N381vbt27nvvvuYPn06Y8aM4corr/R6TcfjXL9+PT/96U8ZO3Ysc+bM4aWXXvK63rvvvsucOXMYPXo0t99+O0VFRZ7v/3HdDbO99tprZGVleb62Wq08+uijzJ8/n9GjRzN37lx++9vf0tradUNoh8PBH//4RyZNmsSECRP47W9/y9KlS8nKyqKioqLLeX//+9+ZM2cOeXl5XHLJJSxduvSsv19S4RHn7PheWGu3V/LMf3bIknPR72YlT+lcbXTScvTy0kNUVxwhIjqGlMxsACx71vkixCGho76Cytd+SdzCR9EEhvXr8JbT6WT79u3Mnj272yGogIAAJk+ezJo1a3A6nTzwwAOkpaXx+OOP88wzzxAZGUlkZCTvvfcet99+O5deeinXXnstgYGdW4q8+uqr/PWvf+XWW29l0aJFHDx40JPwPPTQQ13u9dBDD3Hddddx++238+9//5tFixaRn59PWloaFouFe++9l/Hjx/P3v/8dvV7PgQMHTjlPaOLEiURFRbFs2TLy8/M9xzds2EB9fT0LFiwAoLy8nBtuuIGMjAwee+wxVCoVzz//PLfddhsrVqxAr9ef8/e2qqqKcePGceONN6LX69m2bRsPP/wwiqJw9dVXdzn3kUce4corr+TZZ5/liy++4PHHHycrK4uZM2cCnVW4Rx55hGuvvZb58+ezd+9e/ud//uec4rLZbLhcLn784x9jMpk4evQozz//PA888ABvvPGG57y//e1vvPvuuzz44IPk5OTw6aefdkkUj/vRj37Etm3b+P73v09aWhpr1qzhZz/7GcHBwcyaNavHcUnCI86J0+VCrVLz6ieFfLj6oK/DEeeJeand997ZX7gTh92O0c+/s/dOyRbc1oGd0DrUOM01VP3rYeJufwyNMajfhreamppwOBzExnq3ETguNjYWu92O2WwmMTGRlJQUAHJyckhISAAgPj4ejUZDTEwMY8aMAcBisfDUU09x11138ZOf/ASAgoICdDodjz32GHfeeadn/g/AzTffzM033wzA2LFjWbNmDZ9++ikPPPAAhw8fprW1lZ/85CeeasXUqVNPGbNarebSSy9l2bJl/PznP/f0Ofrkk0/IyMjwXOOZZ54hJCSEV199FYPBAMC4ceOYN28e//nPfzzxnIvLLrvM8/+KojBx4kRqamp47733vBKeiy66yDOcOHXqVFavXs2nn37qSXj+8Y9/MGXKFP74xz8CncONTqeT//u//zvruEwmE7///e89XzudThISErjppps4fPgwKSkpmM1m3nnnHe6//37uuecezz1vu+02jh496nnuhg0b+PLLL3n55ZeZPn060Pl3XFdXx9NPP31WCY8MaYmz5uhwYne4+P0/N0iyIwZMdkQ6UYERXg30rG0W9u7aRnBYGGERkZgiY86brSR6y9lcx9E3f4e7wzYk99/avn07VquViy++GKfT6fkzbdo0bDYbJSUlXc4//oEJ4O/vT1xcHNXV1QAkJiYSGBjI7373O5YtW0ZjY+MZ73/ZZZdRXV3N1q1bgc6hly+++KJLIrJ+/Xrmzp2LRqPxxBccHMzIkSMpLCzs1etvbm7mj3/8I3PmzCE3N5fc3Fzee+89Dh/2nrt24mtXqVSkpaV5XrvL5WLv3r2eOVTHzZs375xjW7JkCVdddRVjx44lNzeXm266CeickA6wf/9+7Ha71z1O/nr9+vWEhoYyZcoUr7/jvXv3dhm6PBOp8Iiz4uhw0tBs43cvbaBK9sISA2hOytRuJysf3LeHpvp6ElPTSM/Jo8Nixnpwu4+iHHo66supfucPxN7ye0DV5316wsLC0Ov1XX5rP9nRo0cxGAyEhoae1bWbmjrnDJ5czTjxuicKCgrq8rVOp8PhcAB4qjBPPfUUP//5z3G5XEyYMIGHH364y/yUE40aNYrExEQ++eQTJkyYwNq1a2lpafEMZx2P8fXXX/fMUTr5/r2xaNEitm/fzve//33S09MJDAzknXfeYfny5V7ndvfaj8+paWxsxOl0YjKZupwTHh5+TnF9/vnn/OIXv+D666/nxz/+MaGhodTV1fH9738fu72zVUldXR1Alwpcd/ds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\n"},"metadata":{}}]},{"cell_type":"code","source":["df.info()"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"EoON9gXX5IEC","executionInfo":{"status":"ok","timestamp":1725031555122,"user_tz":-180,"elapsed":412,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"b3c3bc4c-f925-4785-8385-2306635f1c09"},"execution_count":22,"outputs":[{"output_type":"stream","name":"stdout","text":["\n","RangeIndex: 24783 entries, 0 to 24782\n","Data columns (total 6 columns):\n"," # Column Non-Null Count Dtype \n","--- ------ -------------- ----- \n"," 0 count 24783 non-null int64 \n"," 1 hate_speech 24783 non-null int64 \n"," 2 offensive_language 24783 non-null int64 \n"," 3 neither 24783 non-null int64 \n"," 4 class 24783 non-null int64 \n"," 5 tweet 24783 non-null object\n","dtypes: int64(5), object(1)\n","memory usage: 1.1+ MB\n"]}]},{"cell_type":"code","source":["tweets = df.tweet"],"metadata":{"id":"gfgSmWeu5JxO","executionInfo":{"status":"ok","timestamp":1725032338068,"user_tz":-180,"elapsed":472,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":27,"outputs":[]},{"cell_type":"code","source":["tweets"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":458},"id":"zjWVe5LN72xU","executionInfo":{"status":"ok","timestamp":1725032346366,"user_tz":-180,"elapsed":388,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"5affef3e-3c2c-4112-b96d-c5f4a3750c54"},"execution_count":28,"outputs":[{"output_type":"execute_result","data":{"text/plain":["0 !!! RT @mayasolovely: As a woman you shouldn't...\n","1 !!!!! RT @mleew17: boy dats cold...tyga dwn ba...\n","2 !!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby...\n","3 !!!!!!!!! RT @C_G_Anderson: @viva_based she lo...\n","4 !!!!!!!!!!!!! RT @ShenikaRoberts: The shit you...\n"," ... \n","24778 you's a muthaf***in lie “@LifeAsKing: @2...\n","24779 you've gone and broke the wrong heart baby, an...\n","24780 young buck wanna eat!!.. dat nigguh like I ain...\n","24781 youu got wild bitches tellin you lies\n","24782 ~~Ruffled | Ntac Eileen Dahlia - Beautiful col...\n","Name: tweet, Length: 24783, dtype: object"],"text/html":["
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
tweet
0!!! RT @mayasolovely: As a woman you shouldn't...
1!!!!! RT @mleew17: boy dats cold...tyga dwn ba...
2!!!!!!! RT @UrKindOfBrand Dawg!!!! RT @80sbaby...
3!!!!!!!!! RT @C_G_Anderson: @viva_based she lo...
4!!!!!!!!!!!!! RT @ShenikaRoberts: The shit you...
......
24778you's a muthaf***in lie &#8220;@LifeAsKing: @2...
24779you've gone and broke the wrong heart baby, an...
24780young buck wanna eat!!.. dat nigguh like I ain...
24781youu got wild bitches tellin you lies
24782~~Ruffled | Ntac Eileen Dahlia - Beautiful col...
\n","

24783 rows × 1 columns

\n","

"]},"metadata":{},"execution_count":28}]},{"cell_type":"code","source":["! pip install vaderSentiment"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"o5G7P2q29_Ky","executionInfo":{"status":"ok","timestamp":1725033252038,"user_tz":-180,"elapsed":3662,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"b3c910a3-ef7c-4bd4-8ef1-023267b83a6a"},"execution_count":30,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting vaderSentiment\n"," Downloading vaderSentiment-3.3.2-py2.py3-none-any.whl.metadata (572 bytes)\n","Requirement already satisfied: requests in /usr/local/lib/python3.10/dist-packages (from vaderSentiment) (2.32.3)\n","Requirement already satisfied: charset-normalizer<4,>=2 in /usr/local/lib/python3.10/dist-packages (from requests->vaderSentiment) (3.3.2)\n","Requirement already satisfied: idna<4,>=2.5 in /usr/local/lib/python3.10/dist-packages (from requests->vaderSentiment) (3.8)\n","Requirement already satisfied: urllib3<3,>=1.21.1 in /usr/local/lib/python3.10/dist-packages (from requests->vaderSentiment) (2.0.7)\n","Requirement already satisfied: certifi>=2017.4.17 in /usr/local/lib/python3.10/dist-packages (from requests->vaderSentiment) (2024.7.4)\n","Downloading vaderSentiment-3.3.2-py2.py3-none-any.whl (125 kB)\n","\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/126.0 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m126.0/126.0 kB\u001b[0m \u001b[31m7.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hInstalling collected packages: vaderSentiment\n","Successfully installed vaderSentiment-3.3.2\n"]}]},{"cell_type":"code","source":["! pip install textstat"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"XTNgkltE_pNC","executionInfo":{"status":"ok","timestamp":1725033283759,"user_tz":-180,"elapsed":10285,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"1893e590-f344-4ba3-b014-e360385d8e95"},"execution_count":31,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting textstat\n"," Downloading textstat-0.7.4-py3-none-any.whl.metadata (14 kB)\n","Collecting pyphen (from textstat)\n"," Downloading pyphen-0.16.0-py3-none-any.whl.metadata (3.2 kB)\n","Requirement already satisfied: setuptools in /usr/local/lib/python3.10/dist-packages (from textstat) (71.0.4)\n","Downloading textstat-0.7.4-py3-none-any.whl (105 kB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m105.1/105.1 kB\u001b[0m \u001b[31m6.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hDownloading pyphen-0.16.0-py3-none-any.whl (2.1 MB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m2.1/2.1 MB\u001b[0m \u001b[31m25.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hInstalling collected packages: pyphen, textstat\n","Successfully installed pyphen-0.16.0 textstat-0.7.4\n"]}]},{"cell_type":"code","source":["! pip install pyenchant"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"5_y-PFK7_ux-","executionInfo":{"status":"ok","timestamp":1725033304443,"user_tz":-180,"elapsed":6913,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"21d7b13e-598a-4abc-fd4c-b97e8fb165b1"},"execution_count":32,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting pyenchant\n"," Downloading pyenchant-3.2.2-py3-none-any.whl.metadata (3.8 kB)\n","Downloading pyenchant-3.2.2-py3-none-any.whl (55 kB)\n","\u001b[?25l \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m0.0/55.7 kB\u001b[0m \u001b[31m?\u001b[0m eta \u001b[36m-:--:--\u001b[0m\r\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m55.7/55.7 kB\u001b[0m \u001b[31m4.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hInstalling collected packages: pyenchant\n","Successfully installed pyenchant-3.2.2\n"]}]},{"cell_type":"code","source":["! apt install --yes libenchant1c2a"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"7aNQzMZ__vm3","executionInfo":{"status":"ok","timestamp":1725033328918,"user_tz":-180,"elapsed":4503,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"d8762cf4-c0b2-40ce-a907-cdc2cb997f00"},"execution_count":33,"outputs":[{"output_type":"stream","name":"stdout","text":["Reading package lists... Done\n","Building dependency tree... Done\n","Reading state information... Done\n","\u001b[1;31mE: \u001b[0mUnable to locate package libenchant1c2a\u001b[0m\n"]}]},{"cell_type":"code","source":["! pip install splitter"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"kC8hvq4P_4tI","executionInfo":{"status":"ok","timestamp":1725033362471,"user_tz":-180,"elapsed":8420,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"a8d3ea79-ff76-4c62-c6c8-a86f04cc75cf"},"execution_count":34,"outputs":[{"output_type":"stream","name":"stdout","text":["Collecting splitter\n"," Downloading splitter-0.1.1.tar.gz (65 kB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m65.0/65.0 kB\u001b[0m \u001b[31m5.0 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25h Preparing metadata (setup.py) ... \u001b[?25l\u001b[?25hdone\n","Collecting pbr<1.0,>=0.6 (from splitter)\n"," Downloading pbr-0.11.1-py2.py3-none-any.whl.metadata (2.5 kB)\n","Requirement already satisfied: pip in /usr/local/lib/python3.10/dist-packages (from pbr<1.0,>=0.6->splitter) (24.1.2)\n","Downloading pbr-0.11.1-py2.py3-none-any.whl (79 kB)\n","\u001b[2K \u001b[90m━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━\u001b[0m \u001b[32m79.1/79.1 kB\u001b[0m \u001b[31m5.2 MB/s\u001b[0m eta \u001b[36m0:00:00\u001b[0m\n","\u001b[?25hBuilding wheels for collected packages: splitter\n"," Building wheel for splitter (setup.py) ... \u001b[?25l\u001b[?25hdone\n"," Created wheel for splitter: filename=splitter-0.1.1-py3-none-any.whl size=63327 sha256=1a3baa14b390a0bf109205e1132649be40fab385b5ea30c4619dc11eecec8f0d\n"," Stored in directory: /root/.cache/pip/wheels/2b/2e/2a/376f4308df40e1fa8e8ec6583cdce10b381fec5a1bb82f124f\n","Successfully built splitter\n","Installing collected packages: pbr, splitter\n","Successfully installed pbr-0.11.1 splitter-0.1.1\n"]}]},{"cell_type":"code","source":["! sudo apt install libenchant-2-2\n"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"d4_SrnhMAum7","executionInfo":{"status":"ok","timestamp":1725033678597,"user_tz":-180,"elapsed":19347,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"7f7cab5c-7994-443d-f8bd-11a20afcbb3c"},"execution_count":43,"outputs":[{"output_type":"stream","name":"stdout","text":["Reading package lists... Done\n","Building dependency tree... Done\n","Reading state information... Done\n","The following additional packages will be installed:\n"," aspell aspell-en dictionaries-common enchant-2 hunspell-en-us libaspell15\n"," libhunspell-1.7-0 libtext-iconv-perl\n","Suggested packages:\n"," aspell-doc spellutils wordlist hunspell openoffice.org-hunspell\n"," | openoffice.org-core libenchant-2-voikko\n","The following NEW packages will be installed:\n"," aspell aspell-en dictionaries-common enchant-2 hunspell-en-us libaspell15\n"," libenchant-2-2 libhunspell-1.7-0 libtext-iconv-perl\n","0 upgraded, 9 newly installed, 0 to remove and 49 not upgraded.\n","Need to get 1,431 kB of archives.\n","After this operation, 5,501 kB of additional disk space will be used.\n","Get:1 http://archive.ubuntu.com/ubuntu jammy/main amd64 libtext-iconv-perl amd64 1.7-7build3 [14.3 kB]\n","Get:2 http://archive.ubuntu.com/ubuntu jammy/main amd64 libaspell15 amd64 0.60.8-4build1 [325 kB]\n","Get:3 http://archive.ubuntu.com/ubuntu jammy/main amd64 dictionaries-common all 1.28.14 [185 kB]\n","Get:4 http://archive.ubuntu.com/ubuntu jammy/main amd64 aspell amd64 0.60.8-4build1 [87.7 kB]\n","Get:5 http://archive.ubuntu.com/ubuntu jammy/main amd64 aspell-en all 2018.04.16-0-1 [299 kB]\n","Get:6 http://archive.ubuntu.com/ubuntu jammy/main amd64 hunspell-en-us all 1:2020.12.07-2 [280 kB]\n","Get:7 http://archive.ubuntu.com/ubuntu jammy/main amd64 libhunspell-1.7-0 amd64 1.7.0-4build1 [175 kB]\n","Get:8 http://archive.ubuntu.com/ubuntu jammy/main amd64 libenchant-2-2 amd64 2.3.2-1ubuntu2 [50.9 kB]\n","Get:9 http://archive.ubuntu.com/ubuntu jammy/main amd64 enchant-2 amd64 2.3.2-1ubuntu2 [13.0 kB]\n","Fetched 1,431 kB in 0s (6,923 kB/s)\n","debconf: unable to initialize frontend: Dialog\n","debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78, <> line 9.)\n","debconf: falling back to frontend: Readline\n","debconf: unable to initialize frontend: Readline\n","debconf: (This frontend requires a controlling tty.)\n","debconf: falling back to frontend: Teletype\n","dpkg-preconfigure: unable to re-open stdin: \n","Selecting previously unselected package libtext-iconv-perl.\n","(Reading database ... 123595 files and directories currently installed.)\n","Preparing to unpack .../0-libtext-iconv-perl_1.7-7build3_amd64.deb ...\n","Unpacking libtext-iconv-perl (1.7-7build3) ...\n","Selecting previously unselected package libaspell15:amd64.\n","Preparing to unpack .../1-libaspell15_0.60.8-4build1_amd64.deb ...\n","Unpacking libaspell15:amd64 (0.60.8-4build1) ...\n","Selecting previously unselected package dictionaries-common.\n","Preparing to unpack .../2-dictionaries-common_1.28.14_all.deb ...\n","Adding 'diversion of /usr/share/dict/words to /usr/share/dict/words.pre-dictionaries-common by dictionaries-common'\n","Unpacking dictionaries-common (1.28.14) ...\n","Selecting previously unselected package aspell.\n","Preparing to unpack .../3-aspell_0.60.8-4build1_amd64.deb ...\n","Unpacking aspell (0.60.8-4build1) ...\n","Selecting previously unselected package aspell-en.\n","Preparing to unpack .../4-aspell-en_2018.04.16-0-1_all.deb ...\n","Unpacking aspell-en (2018.04.16-0-1) ...\n","Selecting previously unselected package hunspell-en-us.\n","Preparing to unpack .../5-hunspell-en-us_1%3a2020.12.07-2_all.deb ...\n","Unpacking hunspell-en-us (1:2020.12.07-2) ...\n","Selecting previously unselected package libhunspell-1.7-0:amd64.\n","Preparing to unpack .../6-libhunspell-1.7-0_1.7.0-4build1_amd64.deb ...\n","Unpacking libhunspell-1.7-0:amd64 (1.7.0-4build1) ...\n","Selecting previously unselected package libenchant-2-2:amd64.\n","Preparing to unpack .../7-libenchant-2-2_2.3.2-1ubuntu2_amd64.deb ...\n","Unpacking libenchant-2-2:amd64 (2.3.2-1ubuntu2) ...\n","Selecting previously unselected package enchant-2.\n","Preparing to unpack .../8-enchant-2_2.3.2-1ubuntu2_amd64.deb ...\n","Unpacking enchant-2 (2.3.2-1ubuntu2) ...\n","Setting up libtext-iconv-perl (1.7-7build3) ...\n","Setting up dictionaries-common (1.28.14) ...\n","debconf: unable to initialize frontend: Dialog\n","debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78.)\n","debconf: falling back to frontend: Readline\n","Setting up libaspell15:amd64 (0.60.8-4build1) ...\n","Setting up aspell (0.60.8-4build1) ...\n","debconf: unable to initialize frontend: Dialog\n","debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78.)\n","debconf: falling back to frontend: Readline\n","Setting up hunspell-en-us (1:2020.12.07-2) ...\n","Setting up libhunspell-1.7-0:amd64 (1.7.0-4build1) ...\n","Setting up libenchant-2-2:amd64 (2.3.2-1ubuntu2) ...\n","Setting up aspell-en (2018.04.16-0-1) ...\n","debconf: unable to initialize frontend: Dialog\n","debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78.)\n","debconf: falling back to frontend: Readline\n","Setting up enchant-2 (2.3.2-1ubuntu2) ...\n","Processing triggers for libc-bin (2.35-0ubuntu3.4) ...\n","/sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_0.so.3 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libur_adapter_level_zero.so.0 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libur_loader.so.0 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libtbb.so.12 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libtbbbind_2_5.so.3 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libur_adapter_opencl.so.0 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libtbbbind.so.3 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libtbbmalloc.so.2 is not a symbolic link\n","\n","/sbin/ldconfig.real: /usr/local/lib/libtbbmalloc_proxy.so.2 is not a symbolic link\n","\n","Processing triggers for man-db (2.10.2-1) ...\n","Processing triggers for dictionaries-common (1.28.14) ...\n","debconf: unable to initialize frontend: Dialog\n","debconf: (No usable dialog-like program is installed, so the dialog based frontend cannot be used. at /usr/share/perl5/Debconf/FrontEnd/Dialog.pm line 78.)\n","debconf: falling back to frontend: Readline\n","aspell-autobuildhash: processing: en [en-common].\n","aspell-autobuildhash: processing: en [en-variant_0].\n","aspell-autobuildhash: processing: en [en-variant_1].\n","aspell-autobuildhash: processing: en [en-variant_2].\n","aspell-autobuildhash: processing: en [en-w_accents-only].\n","aspell-autobuildhash: processing: en [en-wo_accents-only].\n","aspell-autobuildhash: processing: en [en_AU-variant_0].\n","aspell-autobuildhash: processing: en [en_AU-variant_1].\n","aspell-autobuildhash: processing: en [en_AU-w_accents-only].\n","aspell-autobuildhash: processing: en [en_AU-wo_accents-only].\n","aspell-autobuildhash: processing: en [en_CA-variant_0].\n","aspell-autobuildhash: processing: en [en_CA-variant_1].\n","aspell-autobuildhash: processing: en [en_CA-w_accents-only].\n","aspell-autobuildhash: processing: en [en_CA-wo_accents-only].\n","aspell-autobuildhash: processing: en [en_GB-ise-w_accents-only].\n","aspell-autobuildhash: processing: en [en_GB-ise-wo_accents-only].\n","aspell-autobuildhash: processing: en [en_GB-ize-w_accents-only].\n","aspell-autobuildhash: processing: en [en_GB-ize-wo_accents-only].\n","aspell-autobuildhash: processing: en [en_GB-variant_0].\n","aspell-autobuildhash: processing: en [en_GB-variant_1].\n","aspell-autobuildhash: processing: en [en_US-w_accents-only].\n","aspell-autobuildhash: processing: en [en_US-wo_accents-only].\n"]}]},{"cell_type":"code","source":["import re\n","#import enchant\n","import splitter\n","import pandas as pd\n","import numpy as np\n","import pickle\n","import sys\n","from sklearn.feature_extraction.text import TfidfVectorizer\n","import nltk\n","from nltk.stem.porter import *\n","from nltk.stem import PorterStemmer\n","from nltk.tokenize import word_tokenize\n","import string\n","from vaderSentiment.vaderSentiment import SentimentIntensityAnalyzer as VS\n","from textstat.textstat import *\n","from sklearn.feature_selection import SelectFromModel\n","from sklearn.metrics import classification_report\n","from sklearn.svm import LinearSVC\n","import matplotlib.pyplot as plt\n","import seaborn\n","%matplotlib inline\n","\n","from numpy import array\n","import tensorflow as tf\n","from tensorflow import keras\n","#from keras.preprocessing.text import one_hot, Tokenizer\n","#from keras_preprocessing.sequence import pad_sequences\n","#from keras.models import Sequential, Model, load_model\n","#from keras.layers import Input, LSTM, Embedding, Dropout, Flatten, GlobalMaxPooling1D, Dense, Conv1D, MaxPooling1D, Bidirectional, Concatenate, GRU, BatchNormalization\n","from sklearn.model_selection import StratifiedKFold, GridSearchCV\n","from sklearn.pipeline import Pipeline\n","\n","from sklearn.model_selection import KFold\n","\n","# Importing libraries\n","import pandas as pd\n","import numpy as np\n","from sklearn.metrics import auc\n","from sklearn.metrics import roc_curve\n","from keras import initializers\n","import hashlib\n","import time"],"metadata":{"id":"rUTv0PRGAABL","executionInfo":{"status":"ok","timestamp":1725033682243,"user_tz":-180,"elapsed":452,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":44,"outputs":[]},{"cell_type":"code","source":["import re\n","import enchant # Import the enchant module\n","import splitter"],"metadata":{"id":"7iVJAEOVAloq","executionInfo":{"status":"ok","timestamp":1725033686171,"user_tz":-180,"elapsed":421,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":45,"outputs":[]},{"cell_type":"code","source":["d = enchant.Dict('en_UK')\n","dus = enchant.Dict('en_US')\n","space_pattern = '\\s+'\n","giant_url_regex = ('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|'\n"," '[!*\\(\\),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+')\n","mention_regex = '@[\\w\\-]+'\n","emoji_regex = '&#[0-9]{4,6};'"],"metadata":{"id":"ZMUM74Kl97wU","executionInfo":{"status":"ok","timestamp":1725033690398,"user_tz":-180,"elapsed":402,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":46,"outputs":[]},{"cell_type":"code","source":["#This is the original preprocess method from Davidson\n","def preprocess(text_string):\n"," \"\"\"\n"," Accepts a text string and replaces:\n"," 1) urls with URLHERE\n"," 2) lots of whitespace with one instance\n"," 3) mentions with MENTIONHERE\n"," This allows us to get standardized counts of urls and mentions\n"," Without caring about specific people mentioned\n"," \"\"\"\n"," parsed_text = re.sub(space_pattern, ' ', text_string)\n"," parsed_text = re.sub(giant_url_regex, '', parsed_text)\n"," parsed_text = re.sub(mention_regex, '', parsed_text)\n"," parsed_text = re.sub('RT','', parsed_text) #Some RTs have !!!!! in front of them\n"," parsed_text = re.sub(emoji_regex,'',parsed_text) #remove emojis from the text\n"," parsed_text = re.sub('…','',parsed_text) #Remove the special ending character is truncated\n"," #parsed_text = re.sub('#[\\w\\-]+', '',parsed_text)\n"," #parsed_text = parsed_text.code(\"utf-8\", errors='ignore')\n"," return parsed_text"],"metadata":{"id":"sbwRSaIm8K69","executionInfo":{"status":"ok","timestamp":1725033694442,"user_tz":-180,"elapsed":394,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":47,"outputs":[]},{"cell_type":"code","source":["def preprocess_clean(text_string, remove_hashtags=True, remove_special_chars=True):\n"," # Clean a string down to just text\n"," text_string=preprocess(text_string)\n","\n"," parsed_text = preprocess(text_string)\n"," parsed_text = parsed_text.lower()\n"," parsed_text = re.sub('\\'', '', parsed_text)\n"," parsed_text = re.sub('|', '', parsed_text)\n"," parsed_text = re.sub(':', '', parsed_text)\n"," parsed_text = re.sub(',', '', parsed_text)\n"," parsed_text = re.sub(';', '.', parsed_text)\n"," parsed_text = re.sub('&', '', parsed_text)\n","\n"," if remove_hashtags:\n"," parsed_text = re.sub('#[\\w\\-]+', '',parsed_text)\n"," if remove_special_chars:\n"," #parsed_text = re.sub('(\\!|\\?)+','.',parsed_text) #find one or more of special char in a row, replace with one '.'\n"," parsed_text = re.sub('(\\!|\\?)+','',parsed_text)\n"," return parsed_text"],"metadata":{"id":"S1ZVmUR0-D_B","executionInfo":{"status":"ok","timestamp":1725033704813,"user_tz":-180,"elapsed":369,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":48,"outputs":[]},{"cell_type":"code","source":["def strip_hashtags(text):\n"," text = preprocess_clean(text,False,True)\n"," hashtags = re.findall('#[\\w\\-]+', text)\n"," for tag in hashtags:\n"," cleantag = tag[1:]\n"," if d.check(cleantag) or dus.check(cleantag):\n"," text = re.sub(tag,cleantag,text)\n"," pass\n"," else:\n"," hashtagSplit = \"\"\n"," for word in splitter.split(cleantag.lower(),'en_US'):\n"," hashtagSplit = hashtagSplit + word + \" \"\n"," text = re.sub(tag,hashtagSplit,text)\n"," #print(text)\n"," return text"],"metadata":{"id":"TKuTWBGV-OEM","executionInfo":{"status":"ok","timestamp":1725033708548,"user_tz":-180,"elapsed":371,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":49,"outputs":[]},{"cell_type":"code","source":["stemmer = PorterStemmer()\n","def stemming(text):\n"," \"\"\" Returns a list of stemmed tweets.\"\"\"\n"," stemmed_tweets = [stemmer.stem(t) for t in text.split()]\n"," return stemmed_tweets"],"metadata":{"id":"4EXghvAZ-R0M","executionInfo":{"status":"ok","timestamp":1725033711947,"user_tz":-180,"elapsed":480,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":50,"outputs":[]},{"cell_type":"code","source":["tweets=df['tweet'].to_list()"],"metadata":{"id":"Kailos2J-bSj","executionInfo":{"status":"ok","timestamp":1725033714809,"user_tz":-180,"elapsed":406,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":51,"outputs":[]},{"cell_type":"code","source":["preprocessed_tweets = []\n","for t in tweets:\n"," preprocessed_tweets.append(preprocess(t))"],"metadata":{"id":"pL3eLllL-ufa","executionInfo":{"status":"ok","timestamp":1725033718224,"user_tz":-180,"elapsed":791,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":52,"outputs":[]},{"cell_type":"code","source":["#preprocessed_tweets\n","clean_preprocessed_tweets = []\n","for t in preprocessed_tweets:\n"," clean_preprocessed_tweets.append(preprocess_clean(t))"],"metadata":{"id":"6gRZc37r-x28","executionInfo":{"status":"ok","timestamp":1725033723257,"user_tz":-180,"elapsed":1465,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":53,"outputs":[]},{"cell_type":"code","source":["#clean_preprocessed_tweets\n","stripped_hashtags_preprocessed_tweets = []\n","for t in clean_preprocessed_tweets:\n"," stripped_hashtags_preprocessed_tweets.append(strip_hashtags(t))"],"metadata":{"id":"7SmVJqjh-8r5","executionInfo":{"status":"ok","timestamp":1725033726739,"user_tz":-180,"elapsed":1474,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":54,"outputs":[]},{"cell_type":"code","source":["stripped_hashtags_preprocessed_tweets"],"metadata":{"colab":{"base_uri":"https://localhost:8080/"},"id":"0RYjUjUD-9qq","executionInfo":{"status":"ok","timestamp":1725033730147,"user_tz":-180,"elapsed":477,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"50f3798d-8c5b-4315-ec18-f34bde9af6fd"},"execution_count":55,"outputs":[{"output_type":"execute_result","data":{"text/plain":["[' as a woman you shouldnt complain about cleaning up your house. . as a man you should always take the trash out...',\n"," ' boy dats cold...tyga dwn bad for cuffin dat hoe in the 1st place',\n"," ' dawg you ever fuck a bitch and she start to cry you be confused as shit',\n"," ' she look like a tranny',\n"," ' the shit you hear about me might be true or it might be faker than the bitch who told it to ya ',\n"," '\" the shit just blows me..claim you so faithful and down for somebody but still fucking with hoes \"',\n"," '\" i can not just sit up and hate on another bitch .. i got too much shit going on\"',\n"," ' cause im tired of you big bitches coming for us skinny girls',\n"," '\" . you might not get ya bitch back . thats that \"',\n"," '\" hobbies include fighting mariam\" bitch',\n"," '\" keeks is a bitch she curves everyone \" lol i walked into a conversation like this. smh',\n"," '\" murda gang bitch its gang land \"',\n"," '\" so hoes that smoke are losers \" yea ... go on ig',\n"," '\" bad bitches is the only thing that i like \"',\n"," '\" bitch get up off me \"',\n"," '\" bitch nigga miss me with it \"',\n"," '\" bitch plz whatever \"',\n"," '\" bitch who do you love \"',\n"," '\" bitches get cut off everyday b \"',\n"," '\" black bottle . a bad bitch \"',\n"," '\" broke bitch cant tell me nothing \"',\n"," '\" cancel that bitch like nino \"',\n"," '\" cant you see these hoes wont change \"',\n"," '\" fuck no that bitch dont even suck dick \" the kermit videos bout to fuck ig up',\n"," '\" got ya bitch tip toeing on my hardwood floors \" ',\n"," '\" her pussy lips like heaven doors \" ',\n"," '\" hoe what its hitting for \"',\n"," '\" i met that pussy on ocean dr . i gave that pussy a pill \" ',\n"," '\" i need a trippy bitch who fuck on hennessy \"',\n"," '\" i spend my money how i want bitch its my business \"',\n"," '\" i txt my old bitch my new bitch pussy wetter \"',\n"," '\" id say im back to the old me but my old bitches would get excited \" ',\n"," '\" if you aint bout that murder game pussy nigga shut up \"',\n"," '\" if youre toes aint done you pussy stinks \"',\n"," '\" im done with bitter bitches its a wrap for that . if you a angry bird theres a app for that \"',\n"," '\" is that ya bitch \"',\n"," '\" it aint nothing to cut a bitch off \"',\n"," '\" jus meet son now he ya mane ass bitches \" ',\n"," '\" lames crying over hoes thats tears of a clown \"',\n"," '\" like snoop said in 94 we dont love these hoes \"',\n"," '\" momma said no pussy cats inside my doghouse \"',\n"," '\" most hated but the hoes favorite \" # ',\n"," '\" nice girls bad make me get naughty. bad yello hoe real nice body. down south chick like em real thick\" ',\n"," '\" pimps up pimps up hoes down \" future voice',\n"," '\" post a picture of that pussy get 200 likes \"',\n"," '\" pussy is a powerful drug \" ',\n"," '\" quick piece of pussy call it a drive by \"',\n"," '\" running round here like some brand new pussy thats bout to get fucked \"',\n"," '\" these bitches even worst theyll send them guys for you \"',\n"," '\" these hoes like niggas that spend money not talk bout it \"',\n"," '\" we dont trust these niggas all these bitches \"',\n"," '\" yall niggas b cuffing hoes cause yall aint never have bitches \"',\n"," '\" you dodge a bullet \" \"all da bitches i cut off pregnant or bound to be ....thank god \"',\n"," '\" young pill chamberlain these bitches love my music \"',\n"," '\" teanna trump probably cleaner than most of these twitter hoes but.........\"',\n"," '\" gay niggas couldnt wait to act like bitches tonight\"',\n"," '\" and ima steal his cat n replace it with a pitbull he a bitch you should do it\"',\n"," '\". hes gone always be a hoe\"',\n"," '\"...son of a bitch took my tic tacs.\" i like this movie.',\n"," '\"..all i wanna do is get money and fuck model bitches\" - russell simmons',\n"," '\" i probably wouldnt mind school as much if we didnt have to deal with bitch ass teachers\". retweet',\n"," '\" im a fucking fag they said\"',\n"," '\" females think dating a pussy is cute now \" how does doing this stuff make him a pussy',\n"," '\" -simplyaddictedtoguys \" woof woof hot scally lad',\n"," '\" have ya ever asked your bitch for other bitches - kanye voice\" yes',\n"," '\" how u gone bring ur side bitch to a game where you know ya gf friends at \" i swear',\n"," '\" \" woof woof and hot soles',\n"," '\" lemmie eat a oreo . do these dishes.\" one oreo lol',\n"," '\" bitch fuck u \" maybe youll get better. just ',\n"," '\" fuck red malone man bitch ass niggah\" could you please use complete sentences',\n"," '\" why the eggplant emoji doe\"y he say she looked like scream lmao',\n"," '\" hennessey venom gt \" thats one sexy bitch',\n"," '\" him seh me pussy wetter then a shower curtain....\"<.lmao',\n"," '\" and every need to see that pic i just posted because that bitch just said the most racist shit\"',\n"," '\" yo fuck skateboarding all yall some wood pushing faggots man ball is life \" ',\n"," '\" baby monkey bathtime \" awwwwe this is soooo adorable',\n"," '\" i aint shit .\" damn skippy lol',\n"," '\" u ever kill a ant on the sidewalk and think damn what if that nigga was on his way to get some pussy\"no bs must b >.30%chance',\n"," '\" \" 0 rings 0 mvps 0 bitches lol',\n"," '\" ppl talk bad about the ghetto/hood ... but as a kid growing up a nigga had funnnnnnn \"',\n"," '\" the facts on tattoos...tattoo \" hes a pussy with not tattooing them nipples',\n"," '\" bitches be wanting to act like niggas so bad that shit aint cuteeeee\" but niggas act like bitches..',\n"," '\" get worshiping bitch \" woof woof',\n"," '\" wow. im lost. are those buttcheek piercings \" yeah shes a hoe',\n"," '\" ok sis.\" shed rather be a broke bitch *shrugs* shell have to tell me how it works for her',\n"," '\" queer\" gaywad',\n"," '\" faggot read my tweets after dat k\" it wasnt even funny lol',\n"," '\" this bitch was so ungrateful \" fr ..... lulwhore',\n"," '\" i been kidnapped yo bitch\"',\n"," '\" alsarabsss\" hes a beaner smh you can tell hes a mexican',\n"," '\" happy birthday nigs\" thanks yo',\n"," '\" when ur teacher tells u that u have homework \" this bitch need to go',\n"," '\" \" that nigga was eating that hoe lol\" hell yea lol john paul\" nigga said john paul.. ',\n"," '\" what would yall lil ugly bald headed bitches do if they stop making make-up . weave\"',\n"," '\" leafs better win this damn game so i can go riot and shit \" you better start looting my nig',\n"," '\" going back to school sucks more dick than the hoes who attend it.\"',\n"," '\" on my way to fuck yo bitch \" me as a 9 year old',\n"," '\" how come you never bring me food\" i dont have a car retard',\n"," '\" if richnow doesnt show up with hella tinder hoes im not his friend anymore\" chill i brought like like 8 prople',\n"," '\" how bout them cowboys\" shutup pussy',\n"," '\" lmaooooooooooo this nigga \" <.bitch want likes for some depressing shit..foh',\n"," '\" girl you know i was spitting that g shit to you . you was going lbvs\"bitch plz',\n"," '\" let me make a couple tweets off cuzzo page so i wont get in twitter jail.\"lmao bitch dont trick me again',\n"," '\" harlem shake is just an excuse to go full retard for 30 seconds.\"',\n"," '\" amen miley \"okay but she dont need to act like a hoe just bc shes \"emotionally damaged\" foh',\n"," '\" having one loyal female is wayyyyy better than having hoes idc \"',\n"," '\" pussy licking pussy.... meow meow .\"\"\"\" ',\n"," '\" check out our 12th man. \" even with all those faggot ny fans in the stands',\n"," '\" what happen to them vixen ent bitches\" they got ran and threw to the side like a foothill bitch',\n"," '\" im the bitch okay nudes pat \" wow',\n"," '\" youre fucking gay blacklisted hoe\" holding out for anyway ',\n"," '\" the fuck be wrong with these bitches\" nobody knows',\n"," '\" yall shut upp\" make me bitch',\n"," '\" i hate a \"im pregnant\" type of bitch.\"',\n"," '\" got bitches in the dm but i dont ever readem\" which is y your top 3',\n"," '\" baseball season for the win. \" this is where the love started',\n"," '\" little stupid as bitch i dont fuck with yoooooouuuu..\"',\n"," '\" she really asked me that dead ass serious tho all i could say was \"bitch wheet\" lol',\n"," '\" im an early bird and im a night owl so im wise and have worms.\"',\n"," '\" overdosing on heavy drugs doesnt sound bad tonight.\" i do that pussy shit every day.',\n"," '\" pit bulls photographed as lovely fairy tale creatures . they *are* fairy tale creatures.',\n"," '\" aw.\" ...fag dont tweet \"aw\" to me lol',\n"," '\" as long as the lakers trash from now on i could careless. and thats real.\". cc hahaha',\n"," '\" i didnt say anything tho\" kiss me then faggot',\n"," '\" this the \"i play soccer cheat on girls and wear khaki coloured cargos\" haircut \" yup',\n"," '\" i could go for a fat ass bitch on my lap\" same',\n"," '\" 17 missed calls \"das yo p.o bitch twitter finna be screamn ',\n"," '\" ya side bitch gotta know its rules to this shit..anybody ask you my cousin from jersey thinkin bout moving\" lmmfao ',\n"," '\" 3 | amo los pies .\" fuck yeah',\n"," '\" these hoes be thinking meat wont slap they ass \" ainna bruh',\n"," '\" yall bitches wit no edges be doing the most talking \"',\n"," '\" yall still going trick or treating this year or nah\"hell yeah ima be da sweet tooth bandit steal bitches bags n shit',\n"," '\" i wanna have sex with my mom fuck her right in that pussy where i came from\" damn you got hacked like fuck',\n"," '\" if she kiss u with her eyes open watch that bitch\"lmfao',\n"," '\" you a woulda coulda shoulda ass hoe \"',\n"," '\" happy bday bitch ass nigga \"preciate that bitch roll up',\n"," '\" used to send that bitch up\"',\n"," '\" ugly bitches be like im my own wcw duh bitch you aint nobody elses\"',\n"," '\" nigga you know we hacky sack hoes.\" ...nah i throw no look passes lmao',\n"," '\" glad im getting outta atlanta. nothing but a bunch of niggas in . outta jail . dumb bitches with mad kids fuckin em.\"',\n"," '\" this isnt ghetto.....its smart \" im doing this idc',\n"," '\" i would wife a hoe only cuz we wouldnt care that we cheating in each other.\" ...why force the relationship in the first place',\n"," '\" being single isnt an excuse to be a hoe.\" ',\n"," '\" white boy power bitch\" black power bitch',\n"," '\" lets get drunk get blowed spit shit spark blunts . fuck hoes\" bro white dudes have no chill.',\n"," '\" bitch where u been\" around the world and back. where you been',\n"," '\" if i dont get my dick sucked at yo party by a bad bitch im fr gone set it off \" *by *',\n"," '\" is soooo cute. but he probably has hoes on him a lot.\"',\n"," '\" in every cartoon theirs alway a saving these hoes lmao. \" lmao damn captain saveahoe',\n"," '\" who wants to get there nose in these bad bois then \" hot sox and legs',\n"," '\" i wish i was a bitch like my brother keezy \" ooooow i bet you do',\n"," '\" if you dressed up as a cat for halloween you are basic.\" ...or a pussy',\n"," '\" can pornhub just get a gaming stream feature so these dumb bitches can gtfo\" get on it katie<.3',\n"," '\" stop being scared to choke her during sex u bitch ass niggas. shell like it.\". says the guy who hits women out of bed. foh',\n"," '\" ha well iguess i make them hoes loyal bro\" theyll never be loyal that y they hoes my nig',\n"," '\" oh man.. \"its 5 am you off a molly ho where the fuck ya seed at\"\" ',\n"," '\" youre not a man if you refer to every girl as a bitch\"',\n"," '\" lmfao this cat started beating the shit out of me\" my nigga finally got some pussy my nigga',\n"," '\" peel up peel up bring it back up rewind back where im from they move shaq from the line\" ooooow who tf said that trash',\n"," '\" io io alu record ho vine sai pe hahahaha\" lol anywaaaaaays..... haha',\n"," '\" naw its my old tape. new cover . my upcoming mixtape is \" yeah im waiting on that hoe mayne',\n"," '\" ol dirty foot ass bitches..\" this was too funny to me.',\n"," '\" thats where i get my yellow flags for being amazing \" hell yeah niggy',\n"," '\" dont got time for bitches to be actin iffy.\"',\n"," '\" come on stay alive knights nation\" this is still the early bird special. ',\n"," '\" these hoes aint loyal . no they aint \" smfh . wonder why nobody decent wants them',\n"," '\" bruh you studs keep thinking im soft as hell. ask ya girl how many times she screamed she was my bitch. oh okay. stfu.\" bye hoe',\n"," '\" dry pussy bitches always blame it on the condom\"',\n"," '\" shut yo bitch ass up \" ',\n"," '\" gucci mane in jail and dropping mixtapes every month and you hoes cant even text back\"',\n"," '\" you love these hoes more then money wats wrong these niggas\"',\n"," '\" a loyal bitch from the burbs without daddy issues is like finding a holographic mewtwo.\" ...sounding like me over there lol',\n"," '\" easy cum easy hoe\" thats a fact ',\n"," '\" charlie sheen is too real \" major fucking respect for charlie sheen.',\n"," '\" wish i had a bae \" you got all the hoes tho',\n"," '\" fuck twerking bitch can you cook \"',\n"," '\" bitch wtf\" ',\n"," '\" \" shut up zoe\" fight me pussy for zoe im good man.\" you are good maam. move along now',\n"," '\" lmao fucking snake bitches\" @ em',\n"," '\" big booty hoes everywhere sheesh \" damn ',\n"," '\" stay tuned to for an update on the report that 1b will be out 8-10 weeks\" ',\n"," '\" \"i play soccer cheat on girls and wear khaki coloured cargos\" haircut . yes lmfao\"',\n"," '\" oregon chokes every year get off the field trash ass program\" rft',\n"," '\" def not cowboy lol terrell owens was the best eagle . cowboy ever\" ..dude cried like a bitch on tv over romo',\n"," '\" lmfaoooo i hate black people \" this is why theres black people and niggers',\n"," '\" how could u do this to me bitch\" potent',\n"," '\" \" a pissed lad past out. i would lick his dirty soles while he slept.',\n"," '\" \" love frat boy w/ soft long soles',\n"," '\" \" sexy lad with hot soles and arches.',\n"," '\" nah fam i gotta cheat with the hoes\" depends on the female i feel',\n"," '\" \" i got hicks lol',\n"," '\" this new twitter is confusing the shit out of me.\" go back to south america bitch',\n"," '\" toto means ass or vagina\"i think pussy cause toto santi is like nasty pussy',\n"," '\" but what if he actually does choose the ugly bitch over you \"her ass must be fat',\n"," '\" bitch couldnt kill my vibe if ya tried. \" dis why i love miley *',\n"," '\" im tired of bitches saying i look mean.. \" nigga you big af wear tight shirts and grim everybody.',\n"," '\" 10 birds your grandkids may never see thanks to climate change \" ',\n"," '\" \"stay beautiful you bitch\"\"',\n"," '\" r purple. ceeeleee\"man this gurl was jus playin on the \"stupid hoe \" track. but in still shitted on sum gurls',\n"," '\" money getting taller and bitches getting blurry\"',\n"," '\" i aint never seen a bitch so obsessed with they nigga\" im obsessed with mine ',\n"," '\" kobe stay talking trash. but lets not forget \" i meant to do this one. smh.',\n"," '\" \"at least im not a nigger\" \" lmfao',\n"," '\" people always asking me what im mixed with.\" she a bad asian bitch lol',\n"," '\" ariza is a snake and a coward\" but at least he isnt a cripple like your hero roach lmaoo',\n"," '\" fosters home for imaginary trash whoa chill\" that show was everything tf',\n"," '\" i am lowkey tired.\" ...if you tired be quiet and go to sleep hoe',\n"," '\" stop bringing weird niggers into my mentions \"',\n"," '\" we dont love these hoes \"',\n"," '\" if yo girl cant have homeboys you a ol weak bitch ass nigga\"',\n"," '\" i think worst advice i gave you was \" dont be a pussy and speed up\" lol\"',\n"," '\" quote this tweet with your favorite animal.\"pussy',\n"," '\" i hate when strippers tell you theyre \"dancers\". hoe ballet dancers dont pop their pussy to beethoven. you a stripper\"',\n"," '\" andrewbryant poff has double vision after 2 beers poff ... double pussy \" smh',\n"," '\" when bitches twerk on the computer.... me \"in ya in ya damn \"\"',\n"," '\" prince this is art. . nobody takin his bitch',\n"," '\" 61% of welfare/government aid is claimed by white people. so yall black slander is trash now.\"',\n"," '\" these bitches dont care they just play that role.\"',\n"," '\" it took a while for you to find me but i was hiding in the lime tree.\" dis bitch in da wrong tree bro.',\n"," '\" drakes new shoes that will be released by nike/jordan.... yes theres glitter on the shoes \" ....dudes a fag',\n"," '\" inna di ghetto\" you alone lmaoo',\n"," '\" hoes austin teach us austin.\"i teach u how to get curved thats all i know',\n"," '\" bitches cant cook but know how to suck dick ..\" s/o to the ones that can do both',\n"," '\" fat hoes get chose\" lol',\n"," '\" \" well theyre hoesno one expects them to be loyal',\n"," '\" ol bitch ass\" ',\n"," '\" bruh im tired of niggas retweetin miley cyrus naked that bitch aint no types of bad\" lmaooo',\n"," '\" just because tony romo at the mavs game dont mean he still not a bitch lmao.. fuk them cowgirls\" lol bitch fuck you',\n"," '\" holy shit freddie highmore was in charlie and the chocolate factory\" me *rolls on the floor laughing*',\n"," '\" \"i dont want to have sex with my gf because i feel like im using her..\" - anonymous\" whata faggot',\n"," '\" @ one of your followers with this \" @ somebody bitch if you dont',\n"," '\" if ya bitch always bitching clearly she care\" or just an annoying bitch',\n"," '\" these catfish hoes thinkin they slick.. but niggas catching on \"',\n"," '\" cant worry about a bitch that aint worried bout me\" ',\n"," '\" side hoes are for insecure niggas that cant handle a real one.\"',\n"," '\" lmao this bitch come scooting in the tent like she about to fuck some shit up\" ',\n"," '\" my cousin said he share hoes with his brothers. he said sharing is caring and he love his brothers \"',\n"," '\" im hungry but ionn wanna spend my money on food\"broke hoe problems ',\n"," '\" dese hoes be lyin to all of us nigga\"',\n"," '\" \" oh yeah fuck that bitch',\n"," '\" eli manning just threw his nfl-leading 27th interception of the season.\" lmao trash',\n"," '\" usc senior rb anthony brown calls head coach steve sarkisian a racist and quits team. &. \" hes a bitch',\n"," '\" guess what i also have zero time for your mansplaining adios\" stfu pussy',\n"," '\" chilling \" sexy scally lad',\n"," '\" i aint sharing no bitch if you mines you mines \"',\n"," '\" money only impress the simple broke bitches\"',\n"," '\" will never be anybodys bitch they dont let people control or change them.\" rigghhht',\n"," '\" tuku ho idk blah blah blah\" ',\n"," '\" im not mad cuh hahaha\" suure.. tuku ho ita ',\n"," '\" these hoes is crazy\"',\n"," '\" you aint ever gonna be a slice bitch.\" kevin hart. (',\n"," '\" oomf so fuckin fine tho dam\" @ her dont be no bitch.',\n"," '\" i wonder if the girl that gave head to 24 boys for a drink in magaluf has twitter\" she probly sends nudes for fags',\n"," '\" yeah bitch yeah bitch call me _______ a.) maybe b.) steve-o c.) later d.) jesse pinkman\" ',\n"," '\" hickies in between her thighs right by her pussy >.>.>.\" its only right',\n"," '\" would you still love me when im no longer young and beautiful\" no. ugly monkey ass.',\n"," '\" yall come through the front.\"bitch i aint coming',\n"," '\" faggot bitch\" ',\n"," '\" yea im on my ipad. i dont work this friday. lets ball this faggot up \"i work 2-5',\n"," '\" \" this scally lad would get it',\n"," '\" \" halloween was yesterday stupid nigger',\n"," '\" chrus still supahot tho\" *walks up to teacher with test drops test in that bitch fohead* ',\n"," '\" i love eating pussy lol i never get full lol i can eat that shit forever lol\" and ever.',\n"," '\" \" no slushes hoes nasty anyway fam\"them hoes taste like meds\"',\n"," '\" no slushes hoes nasty anyway fam\"',\n"," '\" bobby bitch-by be getting me live as fuck\" hell yea i play that hoe before my workout',\n"," '\" yo bitch is gucci mane my bitch a stoner \"',\n"," '\" i can ride your bitch with no handle bars\"',\n"," '\" and if you aint a hoe get up out my traphoussseeeee\"',\n"," '\" 15 sad tv character deaths were still bitter over... \"ned stark was the man',\n"," '\" these harbor bitches are all \"party bus hoes\"\" lol all',\n"," '\" pussy\" love it',\n"," '\" ultraviolence video its coming you little bitch lana del rey \" bitchy promo',\n"," '\" on my way to fuck your bitch \" lmfao kittycopter',\n"," '\" a smuggler explains how he helped fighters along the \"jihadi highway\" \"',\n"," '\" \" aww their avis look so cute together \" \" do i gotta get ike avi on this bitch ',\n"," '\" \" its simple dont be a hoe=dont worry about being exposed \" fight me\"why ',\n"," '\" whys this bitch boosting herself \" her size isnt exactly the most healthy tho',\n"," '\" bet not be no bitches \" kim bye',\n"," '\" damn near gotta protect my tweets.. stalkers being annoying\" you got that dope dick. drive these bitches loco',\n"," '\" im making marack my girlfriend .\" aye b you pullin hoes just like o taught you',\n"," '\" bruno fag boy\" you love me.',\n"," '\" i must be a bitch you are sike naw\" this why we always beefing ',\n"," '\" down 6-1 look to rally in the bottom of the 9th.\" ',\n"," '\" dont take advantage of a nice person@ hoes\"@ everyjuan',\n"," '\" happy birthday bitch nigga \" thanks pal',\n"," '\" sad knowing that most hoes wont fuck with you bc you aint got stacks.\" wait till friday',\n"," '\" cinco shit harder fucc nigga\"yee but you fucc wit rich homie cuz dats ya homeboy fucc nicca',\n"," '\" ewww i said that last sunday..as in the last sunday i was there. read it again nigs\"',\n"," '\" i only punch real niggas in the face cause a pussy nigga is gonna punch me right back\" strong mush or shake..',\n"," '\" my pussy still fresh\" <.----- something stank girls say.',\n"," '\" ass slapping is one the greatest things. haha. \" i slapped a girl on the ass. . she got mad i aint get pussy for a week',\n"," '\" yeah texans are so much better you fucking retard\" i see that youre mad about this.',\n"," '\" nd wtf is up with dark bitches with blonde.. please have several seats hoe\" ..looking like black.milds out here',\n"," '\" theres a lane some bitches need to stay in \" the left n get right the fuck outta our face ',\n"," '\" i hate when boys deny that they have bitches \" smh',\n"," '\" ya nigs out there still saying yall dont eat butt\" with a straight face',\n"," '\" im a boss ass bitch\" ...that needs to sit in a corner',\n"," '\" hes a hoe i cant\"',\n"," '\" me and paul thinkin bout gettin rentals for da weekend \"oooh shit bitches betta stay out da streets',\n"," '\" bitches hold they nigga down when he get locked up... but if a nigga go to college or the military its a different story. \"',\n"," '\" why do my friends hate me\" because you a ratchet hoe..',\n"," '\" no love for these fuck niggas\" hoes*',\n"," '\" hot meat \" sexy as fuck scally lad. i would love to meet him and his trainers.',\n"," '\" sniff \" perved up scally lad. fuck yeah.',\n"," '\" these bitches love sosa\"',\n"," '\" i legit watched it for about 30 or 40 seconds so did i wtf\" prob cause were retarded smh',\n"," '\" what should i name my cat ideas\" mr pussy',\n"," '\" \" woof woof. sexy thug boy scally.',\n"," '\" u see the damn phone ringing \" when you married bitches makes demands you havent called me',\n"," '\" tevin is my favorite sophomore i think hes so funny\" hes really not. lmaoo hes a little hoe',\n"," '\" 10 sex positions \"naw this what u call fucking the soul outta bitch ',\n"," '\" is bored supposed to be cute you faggot\" sometimes',\n"," '\" one mans trash is another mans treasure \"',\n"," '\" i dont got no type. bad bitches is the only thing i like\" *iongotnotype',\n"," '\" lassen cc the coach wants me\" i feel it youll get more my nig no doubt',\n"," '\" god teeth gold chain white bitches cocaine\"',\n"," '\" its me hoe its me hoe\" shhhhh',\n"," '\" in d.c. we call them rollers in chiraq we call them thots.\" all across america they have been known as a hoe.',\n"," '\" im gonna miss that bitch of a bus driver...\"no you wont. dont lie',\n"," '\" hate when bitches try and put you in the friendzone. bitch im tryin to score put me in the endzone \" on. my. soul',\n"," '\" ashley young has tried to deny that bird s*** landed in his mouth --->. \" hahaha',\n"," '\" yall both gimped up\" aint tht a bitch huh lol',\n"," '\" \" take me for a ride \"\" woof woof',\n"," '\" oh my god i love victoria mitchell\" all my bitches love me',\n"," '\" that long distance shit wack i knew the bitch was cheating\"- uh oh',\n"," '\" hes doing it right \" no bitches smh',\n"," '\" they ban dat pussy for life . he gotta pay 2.5 millon dollar fine\"',\n"," '\" roses are red and violets are blue and niggers are black you know thats true.\" ',\n"," '\" sitting on my window sill window open bird tries to fly in. smacked it. \" ',\n"," '\" but a nigga gon be a nigga be a nigga.\" you sound fuckin retarded',\n"," '\" a video an entire media will likely mock. \" i am such a crybaby',\n"," '\" im not even shy stfu\" kikis mom hi angelique angelique smiles *dips cracker in soup*',\n"," '\" tim tebow got cut from every team he was on in the nfl and he already got more hoes than me in starkville. smh.\" ',\n"," '\" karma is a bitch \" *sips tea*',\n"," '\" fuckin hot gym pussy \" fuck yeah',\n"," '\" jihadi patron hajjaj al-ajmi is arrested at kuwait airport \"',\n"," '\" you can call me fireman cause i turn the hoes on.\"',\n"," '\" i could never have a bby by a lil dick thts y i got a abortion by the last bitch\"- oh my god',\n"," '\" watch women try to argue with me like they have a dick and actually fucked some pussy before\" i hate when bitches do that',\n"," '\" and smoke weed in public fuck cops man do what you wanna do they dont own you run if they come\" are you retarded',\n"," '\" tweety bird tho \"',\n"," '\" my pussy sweet like watermelon \" thotermelon',\n"," '\" when twitter rappers dm me their trash links \"',\n"," '\" loud bitches annoy me\"',\n"," '\" eventually every bitch turns into that hoe.\" # truuu',\n"," '\" \" \" i swear if oomf try talking to me tomorrow..\" @\" \" pussy',\n"," '\" you bitches be pretending to be tf crazy..\" you aint never lied...',\n"," '\" k bye hoe\" um bye ..',\n"," '\" jackies a retard \" at least i can make a grilled cheese',\n"," '\" ima keep on giving these pussy ass niggas ah reason to hate \"',\n"," '\" photo \" he is in sole heaven',\n"," '\" stacey dash won \" baddest bitch evaaaa',\n"," '\" side bitch sunday \" ',\n"," '\" facts what baldheaded bitch made this shit. \" lmao ',\n"," '\" fuck wit us and then we tweakin hoe\" shmurda',\n"," '\" we actin like its the 7th day \" spook',\n"," '\" ill break that lil bitch neck and wont even feel sorry about it\" savage',\n"," '\" this is so fucking hot \" love me some kinky scallies',\n"," '\" yall dumb ass niggas be so pressed to have hoes. yall weak as fuck as fuck\" ...weed over hoes oreos too.',\n"," '\" i can turn yo bitch into a eaterrrrrrrrr\"',\n"," '\" i dont trust dese hoes nikki told 51st where i stay at all my fans screen shot asap\" we finna come to chiraq and shoot sumn',\n"," '\" aye yall ima tryout for the bowling team frfr tryouts passed tho\" no theres two more retard',\n"," '\" now u got what u want bitch enjoy it \" now this is a crazy party i would love to attend.',\n"," '\" colored contacts in your eyes blinders on mine. cause i cant see you at all.\" lmao',\n"," '\" facts \" only the dudes with hoes say they dont got hoes\" ',\n"," '\" im rea start smacking bitches period \" bluffin at its best',\n"," '\" lifes a bitch and then you die thats why we get high cause you neva know when youre gonna go\" my sister is perfect (',\n"," '\" one of us is on drugs and its me but youre still wrong \" hahahahahahah im a bitch sometimes (',\n"," '\" im feeling pretty fuckin ghetto\" smh',\n"," '\" \" \" \" swears im man\" easily\" easily\" behind austin\" nip',\n"," '\" this is a true ride or die bitch \" what the fuck hahahahah',\n"," '\" h.g.wells and charlie chaplin \" ',\n"," '\" all i see is brunos bitch ass on my twitter now. wtf\" brunos all that she sees (drake voice)',\n"," '\" im about to cool faggot chill\" tf is cool nigga',\n"," '\" im so sure bitch\" frfr tf',\n"," '\" twitter is not a source of news broadcast you fucking retards\" it is when nbc abc cnn fox etc are all keeping quiet.',\n"," '\" got a couple bitches saying they know me but ima let the money talk for me \" and im like... ',\n"," '\" grudges are for weirdos\"and bitches',\n"," '\" i told mariam to but cigarettes for her birthday\" you also called me trash rn',\n"," '\" brownies tonight\" what kind',\n"," '\" no text back i dont give a fuck ill text another bitch\" damn someone is hurt lol',\n"," '\" ummmmmm okay \" you got hoes from left to right do yah thang',\n"," '\" using y=mx+b to find the slope of that ass\"',\n"," '\" fit lads nice gear \" these scally lads n trainers would get it',\n"," '\" hell yeah bro \" fuck yeah sexy scally lad in hot gear',\n"," '\" helping out a mate \" i love scally play. fuck yeah',\n"," '\" lads being lads \" fuck yeah. i love scally lad action. hot trainers too.',\n"," '\" next year bitches is gonna be like you gotta promise you wont expose me \"',\n"," '\" so hot lick it bitch .\" fuck yeah. eat that trainer u dirty fucker',\n"," '\" yall think celebrity pussy different from the locals yeah meghan goods is\"',\n"," '\" \"i saw an ajumma walk out in the beginning saying wow this is so trash that i cant even listen to it..\" \" lmaoo',\n"," '\" need these sox \" fuck yeah. i love a kinky scally lad w/ rank sox and sneaks',\n"," '\" i dont ever expose females like that.. thats childish..\" bitch nigga shiiii.....',\n"," '\" \" yasss\" *trys new things with bestfriend*\" *bitch who do you love*',\n"," '\" dude remember this wop video \" omg where did you find that',\n"," '\" thick raw fuck \" damn his man pussy is getting a workout.',\n"," '\" rawr \"my\" sexy french scally. i love him \" sexy scally woof woof',\n"," '\" nothin in life is free.. some of you bitches need to write that on ya panties\"',\n"," '\" if one of you bitches want some of my burrito u can catch me at potosino\" huh haha',\n"," '\" niggas whole hoes out here cuz\" couldnt had said it better..',\n"," '\" hardcore way to eat mac and cheese 1. boil water 2. snort cheese powder 3. drink boiling water 4. fuck bitches\"',\n"," '\" if my fade is perpetually fresher than yours.\" thats a real ass bitch rite there',\n"," '\" annoying bitch that i love \" judyanns so pretty',\n"," '\" \" lmao bitch got on some huggies',\n"," '\" hi bitch no bitch bye bitch\" ',\n"," '\" does he look like a bitch\" ',\n"," '\" chase money not hoes \"',\n"," '\" cant stand a \"i dont know what i want\" ass nigga \" bitch*',\n"," '\" \" \" im on my way \" love a \"hot\" sexy scally fucker.',\n"," '\" these newly gay bitches dont kno how shit works\"',\n"," '\" when a bitch dont want a real job they just become strippers lol\" lol.',\n"," '\" awww meat meat in his feelins\"i ainn n my feelings bitch',\n"," '\" i want snake bites my industrial piercin . a tattoo\"dem hoe accessories dea ',\n"," '\" baby albino \" ',\n"," '\" these hoes aint loyal.\"',\n"," '\" yassssss ordered chinese \" bitch you just ate tacos you fat fuck',\n"," '\" i made that bitch lunch. \" bitches love lunch.',\n"," '\"a no brainer\" but as soon as this bitch gets rich in political power her views will change political whores .',\n"," '\"a pussy a day keeps the devil away\" -',\n"," '\"aint that about a bitch\"... what does that mean',\n"," '\"all these bitches want a baby i dont want no children.\"',\n"," '\"and bitch you must be lost\" ',\n"," '\"baby i like being on your left side\" no bitch you cant be there cuz the street on that side and twitter said i aint real if you do',\n"," '\"bae\" sounds like such a ghetto word. use something else',\n"," '\"batter the wee cunt jewis\" y cos he fucked my ex emma isnt battering the girls ive nailedive moved onstop being a pussy n do it urself.',\n"," '\"bleed out hoe\" -alexa',\n"," '\"boolin in the bando wit a few bitches\"',\n"," '\"brownies for my brownie\" i love this movie. ',\n"," '\"but i need a bad bitch thats hotter than me\" might be the realist shit partynextdoor ever said. thats how i be feelin everyday',\n"," '\"by the way we do punch bitches.\"',\n"," '\"caesar is home\" \"theres so much this bitch looks like. lets start with ape shit\"',\n"," '\"chinese maverick we were communicating comrade u know giving the imperialist yanks the birdie\" ',\n"," '\"dad say hi to my snapchat\" dad \" duces bitch\" ',\n"," '\"do you believe these hoes are not in fact loyal\" \"i disagree with that i do believe they are in fact the loyalest bunchthese hoes\"',\n"," '\"dont know no ugly bitches dont know no broke niggas\"--',\n"," '\"dont make me make you fall in live with a nigga like meee...\" the birds 1.2 are my favorite songs by weeknd',\n"," '\"dont worry about the nigga you see worry about the nigga you dont see... dats da nigga fuckin yo bitch.\"',\n"," '\"dont you ever give my pussy away. you keep it tight alright\"',\n"," '\"dropped a stack cause bitch im on\". - song called \"dope\". download the mixtape here ',\n"," '\"dumb bitches do dumb things\"',\n"," '\"eat the pussy like a real nigga hungry\"',\n"," '\"eff it. lets go after the cripple.\" ',\n"," '\"everything look better with a bitch next to it\"',\n"," '\"facto who cares if you a hoe when your ass looks like this \"',\n"," '\"for every bad bitch there is a nigga tired of fucking her\"',\n"," '\"foreign chick no lie.. man that bitch beautiful\"',\n"," '\"fresh nigga so you kno i need a clean bitch... who kno im working cuz i wanna see my team rich.\" ',\n"," '\"fuck 5/0 i make my own rules. suck my dragon balls bitch call me goku\"',\n"," '\"generate ascii boxes with nodejs\" all i see is the ability to bring flappy-bird in node via ascii tubes and bird ^_^ ',\n"," '\"get me that shit bitch you is fine bear\"',\n"," '\"get your ass back to detroit ya fuckin wigger\"',\n"," '\"girls that i dated its okay i aint mad yo unless you stabbed me in the heart no love hoe\"',\n"," '\"how do you know my twitter password\" bitch please',\n"," '\"have you seen my shows have you seen my hoes if i wasnt hot would they be so thick\"',\n"," '\"he a bitch for hitting that hoe\" ',\n"," '\"he married to a white woman... lucky sum-bitch\" - uncle ruckus',\n"," '\"he wanna be my nigga but im just trinna be his savings account \" omg imma funny ass bitch man but thats real shit ',\n"," '\"her great grandmas a hoeher grandmas a hoeher moms and a hoe and shes a hoe its a long line of hoes\" -grandpa carl everyone',\n"," '\"hey go look at that video of the man that found the kidnapped girls in ohio........what a nigger\" - ',\n"," '\"hey pussy you still there\"',\n"," '\"how about we draft all those gung-ho folks and send them to afghanistan or other war zones so they can show their... ',\n"," '\"how hotter than is it\" \"a bitch.\"',\n"," '\"how u talking to hoes bout bro n em.. why you talking to hoes bout bro n em\"',\n"," '\"how you doing crazy bitch\" is hilarious',\n"," '\"i know my shoes dirty as fuck whatever bitch. you dont have to call\" like negro... one of the first things they look at is shoes dog',\n"," '\"i am a thrill billy..with a hillbilly heart.\" -. hahahahaha jesus murphy',\n"," '\"i call him my bitch\" ',\n"," '\"i cant handle no liquor... but these bitches cant handle meeedd\" - chief sosa',\n"," '\"i dont chase after dudes... i chase after bitches.\" - edgar bautista',\n"," '\"i dont love these hoes baby its me and you forever\"',\n"," '\"i dont even need a picture of tamar that bitch is beat in every picture\"',\n"," '\"i dont have hoes\" ',\n"," '\"i found a new way to chug you have to open your mouth alot\" ',\n"," '\"i fucking hate that bitch so much i wanna smack her in the face then tongue kiss her\"',\n"," '\"i got a bitch set it off like jada picket..queen latifah you riding round with your nieces bitch you titi\"',\n"," '\"i got a sister she told me stop calling women bitches..\"',\n"," '\"i guess this is the night bitches die...\" stewie is that nigga...',\n"," '\"i had a bitch that had a bitch had the bitch eating halibut..\" - ',\n"," '\"i have this lady-love shes married but i still wanna bang her she wont have sex with me what a bitch\" ~a troubadour probably',\n"," '\"i heard you was looking for candy man bitch\"',\n"," '\"i hope you dont get mad ladies. i only call you bitches bitches bc i dont know your names individually.\" -katt williams ',\n"," '\"i just got a number 3 im a bitch boy\"',\n"," '\"i know that shit eatin grin you either just fucked the girl of your dreams or you sold a car. we know youre a faggot. whatd you sell\"',\n"," '\"i only be with older men cause theyre more mature\" that supposed to fool us bitch',\n"," '\"i prolly leave up out this bitch with my cups in my hand and yo hand in my other hand.\"',\n"," '\"i said i dont like it it tastes like wolf pussy\" \"what how do you even know what that tastes like\"',\n"," '\"i taught myself how to eat pussy and cut my own hair\" \"i taught myself how to eat pussy hair\" name the movie ',\n"," '\"i used to dress up like a cop too.\" \"oh really\" \"yeah...right after 9/11...mad pussy.\" \"really\" \"yes...ill never forget.\"',\n"," '\"i went to jail for a flock . came home wit a strike.. you went to jail as a bitch came home as a dike\"- ',\n"," '\"i will fuck u where u stand\". \"u dizzy bitch\". two unique . separate phrases i overheard a relative saying when i was younger.',\n"," '\"i woke up like thi-\" bitch go back to bed',\n"," '\"i would rather you call me bitch than sir\" -my manager',\n"," '\"ill beat on that pussy so hard\"',\n"," '\"ill slit your throat-neck\" ',\n"," '\"im a funky ass honkey.\" - s shout out to tonight before \"cabaret\" ',\n"," '\"im comparing kfc to the pussy\" ',\n"," '\"im downloading you a new personality and ordering you a new face you bitch.. i love you.. goddamn it\" -axl rose yelling at his sex robot',\n"," '\"im feelin like malcolm in the middle these bitches surround me they cant miss em\"',\n"," '\"im gonna piss on your dimple stop wasting prayers on trash teams lol\"',\n"," '\"im probably your main bitch chocolate dipped cinnamon apple\"',\n"," '\"im sick of his shit man sit his bitch ass im fed up bro \" geno threw yet another pick smh\"\"',\n"," '\"im sorry i fucked yo bitch... but she really dig a nigga\" ',\n"," '\"ibs\" irritable bitch syndrome.',\n"," '\"if you love her then hide yo bitch so youll keep shorty.\" ',\n"," '\"if you talk back to me you aint getting no pussy.\" me ',\n"," '\"if youre a bad bitch put your hands up high\" every girl in the room starts waving there hands around.',\n"," '\"imma tie that bitch up in the basement and donkey-fuck her ass for two weeks straight\" hahahahahahahahaha ',\n"," '\"in my mind\" gotta be the dumb hoe anthem...',\n"," '\"is that an albino mexican\" \"no dad hes asian.\"',\n"," '\"it takes a true directioner to accept larry\" you know what bitch its fans like you that make the boys cry. ',\n"," '\"its allegations were u in the bedroom did u see it\" words of a naive . blind bitch. we know ur husband cheated on u. ramona is dumb',\n"," '\"its never too late to tag a bitch.\"- ',\n"," '\"its the dykes\" -hunter dyke with a dyke ',\n"," '\"julia roberts youre a ho\" ',\n"," '\"just follow the yellow brick twitter.\"',\n"," '\"lmfaoooooooooooooooooo if your pussy is good but my mama dont like you guess who gotta go..my mama.\"',\n"," '\"lol cripple\" - wendy davis. scientists create remote-controlled chick to study shy penguins ',\n"," '\"lets do nips ahoy and spank me maybe\"',\n"," '\"lets kill cracker babies\". wtf did i just hear wow.',\n"," '\"like... correct me if im wrong but... doesnt pimpin involve smackin bitches for money\"',\n"," '\"lmao pound cake look like pussy \"',\n"," '\"lmao the d.rose adidas are lighter than my phone .... shit is retarded\"',\n"," '\"mam ren&.e doet in haar rol net of ze ongesteld is wat is ongesteld\" van dat soort vragen waar je denkt hoe leg ik die weer uit.',\n"," '\"maybe she wants to be more than your friend or maybe shes a stupid bitch. you never know until you make her cum.\" ',\n"," '\"mine plays dmx and kirk franklin smh well my neighbors are ghetto . they get up at like 5am and beat their kids.\"',\n"," '\"my grandma used to call me a porch monkey all the time... come to think of it she did refer to a broken bottle as a nigger knife\" ',\n"," '\"my momma told me to tell you to mind yoooo damn motha fuckin business you 2+2 not knowin what it is bitch\"',\n"," '\"my nips are freeeeezing...and thats not okay because theyre slicing through my bra....\" ',\n"," '\"my twitter was hacked\" = im too pussy to admit that i said it and now i want to act like i never said it.',\n"," '\"nah girl i aint gon be able to make it its been tight since russ loss his job\" you in the back like \"damn bitch really\"',\n"," '\"nah its you yo i thought some1 photoshopped my face on that faggot smmfh...i hate yall\" ',\n"," '\"new flame\" the song of the yr lol that bitch super run like',\n"," '\"niggas always yelling \"fuck bitches get money\" meanwhile theyre broke and still want the bitches.\"',\n"," '\"niggas be pressed for pussy eeeeeen nothin\"',\n"," '\"no bitches \" - nan',\n"," '\"no boats and hoes please thanks\" - mom',\n"," '\"ovo\" . kendrick lamar still trash',\n"," '\"on top of that she just a pregnant ass sorry hoe. aint never got no money. even her water broke.\" - ',\n"," '\"only a couple of red sox have gotten past first base.\" im dying laughing. maybe the yanks need to teach them some game.',\n"," '\"our people\". now is the time for the aryan race 2 stand up and say \"no more\". before the mongerls turn the world into a ghetto slum. 1488',\n"," '\"pistol whip my dickau shoot yo bitch club up.\" sometimes freestyles be freestyles. and im okay with that.',\n"," '\" it for me. please and thanks did a pierced pussy just come across my timeline \"',\n"," '\"remy machiavelli send shots to ya belly\" my bitch ',\n"," '\"roberto you are one nasty hoe\"',\n"," '\"sorry jb fanreally justin come back\". that is the top comment on a justin timberlake video with 10 million views. son of a fucking bitch',\n"," '\"searching\" the incredible story of 1 white mans quest to find the ingredients necessary to make caribbean jerked chicken in redneck land',\n"," '\"selling my soul for material wishes fast cars and bitches\" ',\n"," '\"shake that bear ... aka two rednecks having sex on a dead bear\"',\n"," '\"shall i compare thee to a summers day no a summers day is not a bitch.\"',\n"," '\"she gotta shape up her pussy lips tho whole wheat organic pussy \"',\n"," '\"she said wigga man you rich...take the du-rag off\" ',\n"," '\"she was a bitch anyway\"',\n"," '\"shes from florida so youve got to do the sniff test in those swamp pussies\" ',\n"," '\"slow the fuck down bitch i know where you live\" classy young lady.',\n"," '\"so hes a good football player...but he still acts like a nig\"',\n"," '\"stop being a pussy son and shove that needle into your own heart\" ',\n"," '\"stop looking us and go eat some pussy you yuppie fucks.\"',\n"," '\"takin it straight to dirt why finger the pussy when i know i can put my dick in it\" ',\n"," '\"that aint bro moves thats hoe moves\"',\n"," '\"that girl is plain looking borderline ugly . chunky\". hey at least shes got a nice smile . a great personality.',\n"," '\"the devil grows inside the hearts of the selfish and wicked white brown yellow and black color is not restricted\"',\n"," '\"the water isnt yellow im a healthy student\"',\n"," '\"these hoes aint loyal\"',\n"," '\"these hoes keep callin but i aint pickin up\"',\n"," '\"these sour apple bitter bitches im not fuckin wit em\"',\n"," '\"they faggots orioles petty as fuck...got swept up outta this bitch\"',\n"," '\"they have some ghetto ass bands\" * gets snuck* ',\n"," '\"they have to. that division is trash saints gon win the nfc south...watch\"',\n"," '\"this is for all the fans that waited the bitch niggas that hated / old hoes we dated look mama we ',\n"," '\"this is for my ghetto motherfuckers\" -missy elliott',\n"," '\"this recipe calls for a leftover brownie. what the hell is a leftover brownie thats just a brownie you havent eaten yet.\"-',\n"," '\"those ratchet broads dont represent me but your white ass cant talk trash about them cause you on racist shit\" black',\n"," '\"trust noneeee bitch i dont \"',\n"," '\"twitter is twitter\" bitch twitter is life',\n"," '\"two roads diverged in a yellow wood and i chose the one to j&.tunheimr\" - robert frost giant',\n"," '\"u got my 200k bitch nigga\"--al haymon to antonio tarver',\n"," '\"uh-uh what do we have your empty heart my empty bottle a yellow cab.. that you would like to catch cuz yo latest ex made u mad..',\n"," '\"used to have a girlfriend now all i got is hoes.. i was lookin for a good girl but she was fuckin on the low.\"',\n"," '\"virgin pussy \" () \" regular pussy \" ( ) \" oomf pussy (_________________________)',\n"," '\"whaaaaaat lmaooo thats why i luv u fat bitches cuz yall got some big ole titties and phat booties\"',\n"," '\"walked in that bitch like nigga we made it\"',\n"," '\"we hate niggers we hate faggots and we hate spics\"-kkk rally',\n"," '\"were out here and were queer\" \" 2 4 6 hut we like it in our butt\"',\n"," '\"well bitch biology said...\" ',\n"," '\"what i do gotta report you as spam ladies if your head game better than your pussy\"',\n"," '\"when im done with a hoe i pass her to the squad\" g',\n"," '\"who the fuck you callin jiggaboo nigga\"',\n"," '\"why people think gay marriage is okay is beyond me. sorry i dont want my future son seeing 2 fags walking down the street holding hands an',\n"," '\"why u being such a little bitch chris you aint six bitch\" - allisons mom',\n"," '\"why would i want to play with some pussy\" - *dead* ',\n"," '\"why would you wanna be the green ranger hes evil\" duh bitch',\n"," '\"why would you want pussy on your side burns.. thats a good question\" hahahahaha ',\n"," '\"will shank a bitch for ceviche\"',\n"," '\"work\" - gets me through those rough days hahaha ',\n"," '\"wow you are a bitch\" yes thats already been established anything else you have to say',\n"," '\"yall forget he has his brand new baby girl at home\" bitch the cookies are burning',\n"," '\"yah\" has said in his word that the mtzraym(egyptians) are his people and ysrahal is his inheritance and the kushite(ethiopians).....',\n"," '\"yaoooooooo mawnin yardies \"',\n"," '\"yo bitch on the horn. tryna shoot a porn.\" - thats t shirt worthy tony',\n"," '\"yo can i sublet your pussy\" ',\n"," '\"yo feet smell like my puss\" whut \"like flowers bitch\" omg',\n"," '\"yo mama bitch.\" what was the one sentence that ended your relationship',\n"," '\"you aint gunna do shit spear chucker\"',\n"," '\"you aint my bitch\" is my favorite response to long texts',\n"," '\"you and yo boys some pussy cats.\"',\n"," '\"you are a cunt\"',\n"," '\"you can pull more pussy with a dodge and collect them panties alright.\" -stormy and jake ',\n"," '\"you can take someone out of the ghetto but you cant take the ghetto out of them.\"',\n"," '\"you dont like us colored folks what the hell youre not colored you white fucks\" ',\n"," '\"you got hella hoes\" ',\n"," '\"you hit no lights no line for toco bell at 2 in he morning and dianas back in her house. its a miracle\" - charlie ',\n"," '\"you look cute today )\".. \"really\" helll no swerve hoe',\n"," '\"you look like little birds help you get dressed in the morning\"',\n"," '\"you ol trout mouth ass bitch\" deeeeaaaadd',\n"," '\"you talk like a fag and your shits retarded. but thats cool scro lots of tards out there living total kick-ass lives\"',\n"," '\"you took our land so you could make each other retarded in diapers sure....use our image....cool....\" ',\n"," '\"youre a garden rose and that bitch is a weed.\"',\n"," '\"youre fucked up\" no shit you dumb ass cunt now go post pictures if your flat ass titties on ig slut',\n"," '\"your a queer\". ',\n"," '\"your homeboy looking bad and you giving cash to them hoes\"',\n"," '\"your teeth are like the stars.\" \"aww thanks\" \"yeah... yellow and far away from each other.\"',\n"," '\"yup. fuck em playing like trash clippers dont wanna play lol\"',\n"," '\"aint it time for you hoes to get out of here\" lol this is what arianas mom says to us',\n"," '\"are we bitches\" - ',\n"," '\"ayo i even kill handicapped and crippled bitches/look at my scalp real close and youll see triple sixes\"',\n"," '\"bitch freak my shit\"',\n"," '\"bitch my vagina is a little more resilient than that\" -',\n"," '\"but i love him\" nah bitch that aint love.',\n"," '\"but pussy is the root of all drama an attribute put up in they head by they mama.\"',\n"," '\"call me keyshawn johnson cause im catchin erry hoe\"',\n"," '\"captain save a hoe\" is the most annoying phrase',\n"," '\"day of judgement everybody gonna be looking at the big jumbotron watching me fuck this majjinn buu bitch\"',\n"," '\"dont let your side bitch settle in i might have to headbutt you evelyn\"',\n"," '\"dont show me no bitch unless she look like dolly parton\"',\n"," '\"fuck you you pussy ass hater go suck a dick and die quick\" - someone to me in youtube comments. i think wed be good friends.',\n"," '\"hick and raver is a venn diagram that has a very large intersection\"',\n"," '\"hoes suck my dick cus i look like john stockton hit em wit the choppa luke i am your fatherrr\" - ',\n"," '\"if i wasnt in a work place id deck you\" aye fucking right id give you a tyson 4 combo nd end you with an uppercut. shut the fuck up bitch',\n"," '\"if she can suck your dick with a dip in shes not only a keeper but a true redneck woman.\" - kims dad.',\n"," '\"im gonna rip that bitch apart\" \"rip what apart\" \"lol\"',\n"," '\"its britney bitch\" - the bible (leviticus 758) ',\n"," '\"niggas bitches bitch ass niggas dike ass hoes black ass and bright ass hoes fag tags and scally wags\"',\n"," '\"no pussy or not tryna go to the studio dont call my mufuckin crib like that god. yo. word up god i will buss yo shit god word up\"',\n"," '\"oh ya these hoes think they cute in skin tight cat suits assuming that they bodies to boomin to dispute\"',\n"," '\"omg this bitch is fucking stupid i swear blah blah blah\" *a week later* omg ilysm bae ur my best friend i swear',\n"," '\"on my way to fuck your bitch in the name of the lord\" - mr. race',\n"," '\"poor whitey\" ',\n"," '\"riding with my bros still dont trust these hoes\"',\n"," '\"this weekends going to be fabulous\" naa man youre seeing nae cunt. if you do theyll be koed in 2 seconds flat. hate u. ',\n"," '\"whatever you are be a good one.\" -abraham lincoln this quote is not for yall hoes',\n"," '\"when guys say \"latinas >.\" they mean the kim kardashian looking girls not you bitches that shaped like a mini fridge . smell like tortillas\"',\n"," '\"when rappers say twat it makes me feel weird\" ',\n"," '\"you better pipe your pussy down over there\"- &.lmao wth does that even mean',\n"," '\"you fucking pussy you couldnt even beat your dick.\" - angry youtube comment',\n"," '\"youre being a cunt right now\" -',\n"," '# that son of a bitch moment when it rains and you forget your car windows are down',\n"," ' needy hoes ratchet hoes sideline hoes beggin hoes dumb hoes looking for love on facebook hoes..',\n"," ' get to hit any bitch on campus he wants to',\n"," ' . fa blowin my tl. up like a bitches spare tire leavin dairy queen',\n"," ' and are having so much fun at this charlie wilson tribute .',\n"," ' how pussy feels ',\n"," ' is that all pussy bitch',\n"," ' lot of rain too bad it wasnt enough to wash away the teabagger racist white trash in the state. ',\n"," ' gets a million retweets but cant even get a bitch to text him back.... ',\n"," ' had them bitches wet...lmmfao',\n"," ' still calling a community organizer re . well she is still as well. so what',\n"," ' pussy ',\n"," ' arent you embarrassed that charlie rangel remains in your caucus',\n"," ' bass over bitches bitches on his dick fishes on the dock',\n"," ' ap calls mass. governor race for charlie baker. watch live coverage on wcvb streaming online. ',\n"," ' ya bitch you 56 -fruit loop',\n"," ' becomes a real bitch when you the are way way taller than the bar was designed for. holy back pains.',\n"," ' bitches love sosa ',\n"," ' was made by a gay couple. so yes under a gop world the bird would not have existed since its creators would be in jail for sodomy.',\n"," ' 2nite pure passion doors open @ 10.... but we watching the game in that bitch too ',\n"," ' amos 33 - can two walk together except they be agreed',\n"," ' amos 510 there are those who hate the one who upholds justice in court and detest the one who tells the truth.',\n"," ' the of his head to the sole of his feet',\n"," ' matthew 626 look at the birds of the air.. and yet your heavenly father feeds them.are you not much more valuable than they',\n"," ' happy belated ( sixty-fifth) 65 birthday *28 aunt mary agnes ',\n"," ' hungrier then a phat ho on a diet ig ',\n"," ' fi shoots bean bag rounds at the guy - hurts like a bitch dont they',\n"," ' is full of white trash',\n"," ' is full of white trash who moved from ',\n"," ' yeah>. now you know how it feels knowing the is on all our phones. quit whining like .',\n"," ' should be kissing ass for his fight with god otherwise we might all be fucking dead>. ',\n"," ' why uou so ghetto',\n"," ' are 6-1 bitches another great win ilove this team',\n"," ' that whip cracker',\n"," ' is trash because of non-europeans are allowed to live there.',\n"," ' thats because theyre possibly tucking a penis \" this bitch got man boobs \"\"',\n"," ' there are easier way to get pussy w/out sacrificing your man hood...best of all they dont include losing ur self respect',\n"," ' aint fuckin around with >. i got blessed by jesus and you are not next you fake ass text>.',\n"," ' cant do it all on card>. im not a french muslim retard>. i dont expect or demand a child bride yard cuz i got man dick>.',\n"," ' isnt a bitch walks back his words>. isnt a witch who questions a turd>. im a glitch who evolves your absurd',\n"," ' knows words>. bo jingo dangle fan slang ho ting pang lick drum swing flick alarm bic>. but you cant hear fire can you',\n"," ' sniffs whiffy balls involuntary cuz a fairy walks downtown hairy all our scary sense of hillbilly sneeze>.',\n"," ' as a lifelong man i will miss you. ',\n"," ' farmers are white trash.',\n"," ' people who live outside of are all white trash.',\n"," ' @ kansas city ',\n"," ' great and i thought the panic from bird flu was bad. i really aint got time for that.',\n"," ' is a great metaphor for how policies eat off of vital organs until the host dies. ',\n"," ' boy with a monkey tail grows up to the the savior of a futuristic yet old earth',\n"," ' kanye is best when a good piece of pussy fucks him over',\n"," ' females that tweet all the dayum day r hoes that need attention ',\n"," ' is worse than the jig im convinced',\n"," ' why because i am having to root for the royals in october. ',\n"," ' is trending why cus french montanas bitch ass you fucks that think selling drugs is cool are the lamest posers',\n"," ' bitch its going 3 mo weeks',\n"," ' and if you aint a hoe get up out my traphouseeeeeeee',\n"," ' isaiah mom asked me if i wanted a brownie i said no thanks she said what are fasting',\n"," ' shy glizzy feat plies - free tha gang ',\n"," ' if is wasnt for ................. would never have thought of sharing with ',\n"," ' .....hate to sound all callous and all........but had it a lot worse than the ..........',\n"," ' is one bad bitch wouldnt wanna mess with her impact',\n"," ' happy fall pumpkin spice oreos are here ',\n"," ' were here at the opening serving free samples of cider vegan sliders brownies ',\n"," ' joshua 13 every place that the sole of your foot shall tread upon that have i given unto you as i said unto moses.',\n"," ' in middle school hoes used to call me a mandingo warrior',\n"," ' ratchet hoes.',\n"," ' that these hoes just find their own relationship instead of ruining others',\n"," ' wise up rino pussies real leaders like rand cruz lee bachmann etc. actually exist. fight or go home. ',\n"," ' 8 straight nation soccer champions wow ',\n"," ' should make me an honorary student id be way cooler than the other international students. i have my own football card ',\n"," ' id be the best prostitute and madam ever. hey if you got pussy you shouldnt be broke right lmao jk',\n"," ' i eat da pussy better than a lesbian.',\n"," ' i was fat as hell and was a band faggot. thank god i played sports after 6th grade and didnt stay in band',\n"," ' .........right. because these had a lot of right nomg. ',\n"," ' haha you fuckin retarded commies hunter biden loves snortin that pygmie fairy dust dont he ',\n"," ' is full of white trash',\n"," ' gov troops were handed a severe defeat by at saqlawiya -- theres chatter of over 300 soldiers lost . jihadis raving about it',\n"," ' was straight>. thats why the killed him. >.',\n"," ' lol thots be like only great thing these bitches can offer ',\n"," ' so a1 niccas be tryn talk like me',\n"," ' hoes thinkin they bad even if they are i will tell her \"bitch calm down u average\"',\n"," ' u better cook and clean for me bitch. ill give u all my money but i aint cleanin no dishes and makin my own plate.',\n"," ' is full of white trash',\n"," ' spanish bitches suck dick by 11 and have babies by 15 because theyre already fine and dressing slutty.',\n"," ' q.u.e.e.n. and reminded i still dont get why janelle monae is so perplexed that people think shes queer...',\n"," ' \"centuries\" ~fob',\n"," ' ...sure. celebrate over 1 billion bird deaths and blame it on you fuckin .',\n"," ' okay. im only going to say it once. comb yer beards. ',\n"," ' bt feat. tori amos - blue skies (radio edit) on - ',\n"," ' great white - once bitten twice shy on - ',\n"," ' ian hunter - once bitten twice shy on - ',\n"," ' the doors - the wasp (texas radio and the big beat) on - ',\n"," ' had that yeah... i kno she pussy whipped that other nigga into putting a ring on it.... ',\n"," ' bitch is running a hundred meter dash on this niqqa whos actually taking his time walking . u still get killed',\n"," ' is on november 10th. get your early bird tickets from ',\n"," ' 4/4 on the road perfect way to continue after have finished ',\n"," ' valerie jarrett so i control my reflex to bitch slap her.',\n"," ' my little brother and i hate to admit it but and he knows why. but hes still a lil bitch though. fuck you',\n"," ' how yall bitches gon breast feed wit nipple rings \"',\n"," ' why should i be slapping this hoe tuh solve something ima leave it alone..............i never usually listen to myself',\n"," ' 218 covington reads responses . mocks fbi andy on real politics liv on her awakening gretchen ',\n"," ' is a bitch. ',\n"," ' is still a bitch. got this one wrong. women fans should be livid ',\n"," ' if u was talkin to my nig or smashed da homies',\n"," ' youre a hoe. stop focusing on sucking dick focus on getting rich',\n"," ' ......its about sharing >. . it not about hogging the like a fuckin gasbag son of a bitch.....',\n"," ' ......is using an actual woman as a genetic engineering lab for \"all natural clones\"..... or something...... ',\n"," ' focus on the that knocked you out last year and not your hatred of the for um-teen years lol',\n"," ' with dcyoungfly dirtymoney24 damn that bitch a bab thats a big ... ',\n"," ' 2-1 fantastic. ready for tomorrows sweep of the disposed os. 4ever except this month.',\n"," ' milwaukee let yost go.now they wished they hadnt cause they suck.how about now.hes the guy win or lose. yankees fire girardi yost',\n"," ' charlie lapdance',\n"," ' fairy queen. nomg>. i fucked panties again...............',\n"," ' to everybody that follow a nicca',\n"," ' to my niccas ',\n"," ' to my niccas',\n"," ' to my exit 47 niccas ',\n"," ' ---->. niggahs telling hoes im down talking them just so i cant get on ',\n"," ' is for trash.',\n"," ' alls niggers wanna do is fuck tweet and drink pineapple soda all day',\n"," ' are you... asian black hawaiian gay retarded drunk',\n"," ' is full of white trash',\n"," ' on you pussy n%az ay i tried to tell n%az',\n"," ' 9 cases of west nile virus infections reported in orange county this year. 105 dead birds found carrying virus',\n"," ' love you forever ling ling ',\n"," ' at 1030 my nicca',\n"," ' david is the charlie brown of ',\n"," ' son of a bitch moment when you finally get in bed and your bladder decides its time to piss',\n"," ' son of a bitch moment when you turn the radio on and your favorite song is on but its the end of the song',\n"," ' son of a bitch moment when your walking through your house in the dark and stub your little toe on the wall',\n"," ' when you leave your car windows down and it rains in your car and looks like hurricane katrina ran through that bitch',\n"," ' people who are never happy and bitch-n-moan 100% of the time.',\n"," ' how to play deez niggas n bitches dat be snakes',\n"," ' give her all da dick u gotta half stroke da pussy bc if u dump dick on dat bitch she gon become extremely anoyin',\n"," ' lil bitch follow me ',\n"," ' you can fuck dem hoes but you better not love dem hoes.',\n"," ' referred to zimmerman as a \"creepy ass cracker\". racist thug.',\n"," '&. i do the pontiac sprinkler... nigga nigga nigga nigga spic spic spic spic nigga nigga nigga nigga',\n"," ' \"i made out with 3 bitches\" ',\n"," ' fucc nicca ',\n"," ' can get a job at the naacp. or as the ag. i hear they like \"diversity and tolerance\". as long as you aint a cracker ',\n"," ' is full of white trash.',\n"," ' bo violated usa sovereignty w/open border/jihadis/criminal/diseased/haitians/s.americans ',\n"," ' is full of white trash.',\n"," ' peanut butter oreos <.3',\n"," ' the hoes i wasted time with',\n"," ' it can make a bitch cheat up to four points on the scale of 1 to 10',\n"," ' hunter pence is so annoying he should be a red sox player. shave fool and take your vyvanse 2015',\n"," '',\n"," ' i dont want arod back.',\n"," ' let him play the entire inning. thats fitting.',\n"," ' robertson in. guy is fantastic. sec pitcher',\n"," ' 3 0 mccarthy outduels keuchel in series finale ',\n"," ' 6-0. nine straight hits. price... not your night.',\n"," ' damn you directtv blackout the yankee game. with a freaking walk off youre killing me satellite douche.',\n"," ' damn. well joe that move to the bullpen really helped.',\n"," ' i aint complaining about the royals win or lose game7. they showed heart. al ride or die no flex zone. they earned it',\n"," ' i went to golds with cruz in 2010 when he was a sound. no upper /lower body strength.. hmm now 40 hr hitter. wont say the s word.',\n"," ' if royals have a fire sale. i want the whole team leave gardner and tanaka. the rest can please go. along with joe and cash.',\n"," ' nice bounce back kay. gotta keep this going',\n"," ' pineda needed that 67. great play',\n"," ' primo just got home and the tanks are on mlb. finally and they are winning even better. time to get serious sept call up time',\n"," ' got beaten by a thug',\n"," ' take all three games in motown im callin it ',\n"," ' wasted nu&.ezs season ',\n"," ' .......start building so fuckin\" big they can kill a whole flock of birds in one go>.',\n"," ' .....tattoo our bitches to corrupt as many men as possible to and being a >.',\n"," ' youre proud to be white trash ',\n"," ' there are a few badd ones but idk..mixxed bitches is really where its at tho',\n"," ' la = palm trees and great weather any were else = horrible weather and no bitches',\n"," ' ',\n"," ' bitches',\n"," ' in this bitch 40st and washington space a-80 ',\n"," ' leaving hoes w ',\n"," ' @ the draught horse ',\n"," ' killed >. hello but whatever. go ahead. yourself into pockets>.',\n"," ' are merely a indicator that something is wrong>. do not celebrate as \"unique indiviuals\" for they are >.',\n"," ' is a job for white trash',\n"," ' cuts away when a democrat talks and claim to be fair and balanced. lmao network full of and liars.',\n"," ' wishing ',\n"," ' we dont love these hoes',\n"," ' bitch',\n"," ' fans is cody zeller nominating for this years draft ',\n"," ' anyone from jersey shore is famous. i should go be a guido shitbag if it means money for my family.',\n"," ' snappy pappy and his bitch 3.5x2.5\" good thing sable paintbrushes ',\n"," ' still hanging in. we need this win. nfl. its not sunday',\n"," ' suiting up again tonight ',\n"," ' this bitch has his nose pierced ',\n"," ' dont care got my everywhere im a im a im totally full of ',\n"," ' only honkies',\n"," ' ',\n"," ' prove him wrong righties liberals use facts cons use emotions to make decisions. facts be damned should be the teabagger motto',\n"," ' ',\n"," ' ',\n"," ' browngal ',\n"," ' bitch get at me ',\n"," ' witcha bitch pussy pussy inda hood ona sofa.wit plastic on it',\n"," ' shy glizzy - awwsome (remix) (feat. 2 chainz . a$ap rocky) via . ',\n"," ' can get it but im chilling till da bitch hit me up',\n"," ' but niggas is bitches tho boy niggaz b so bitch made u cud kiss em n da mouth',\n"," ' better then ur whole team',\n"," ' | | anal gaping tranny play panty nylon part ',\n"," ' | | bbc anal creampie bitch ',\n"," ' | | blonde tranny ass fucked ',\n"," ' | | hardcore british queer anal pounding ',\n"," ' | | brazilian bbw babe drilled in pussy and ass ',\n"," ' | | ebony babe pussy ',\n"," ' | | caught a girl rubbing her pussy in nude beach ',\n"," ' | | cute preggie slut big tits plays with swollen pussy ',\n"," ' | up | another pussy close up ',\n"," ' | | squirting pussy and fingered asshole ',\n"," ' | | amateur pussy player milf close up ',\n"," ' | | cumshot on beauty pussy closeup ',\n"," ' | | pussy fuck close up ',\n"," ' | | young japanese girls hairy cunt cre ',\n"," ' | | spicy oriental paki brunette sucks an un ',\n"," ' | | paki ',\n"," ' | | paki ',\n"," ' | | ebony texas bbw with big deep pussy ',\n"," ' | | erotic and wild tits and pussy fucking ',\n"," ' | | blonde tranny whore gets rammed and facialized ',\n"," ' | | dude fists his wifes big pussy ',\n"," ' | | more lovely sounds of fisting a loose pussy ',\n"," ' | | whipped cream fisting ',\n"," ' | | 21 year old hairy pussy cumming on fingers ',\n"," ' | | hairy florence shoves a dildo in her hairy red pussy ',\n"," ' | | hairy pussy ',\n"," ' | | hairy pussy ',\n"," ' | | hand job and cum on rubber pussy ',\n"," ' | | amateur boy fucking bitch hiddencam ',\n"," ' | | candid pussy shots from a hidden c ',\n"," ' | | home made. my wife rubbing her pussy ',\n"," ' | | using my submissive bitch outdoor. home made amateur ',\n"," ' | | my baby pussy ',\n"," ' | | pretty young japanese girls hot cunt fucked . c | ',\n"," ' | | young japanese girls hairy cunt creampied ',\n"," ' | | korean girlfriend pussy ',\n"," ' | | latina chick gets her pussy pumped ',\n"," ' | | latina mature big pussy ',\n"," ' | | latina with tight pussy ',\n"," ' | | lesbian girl eating pussy ',\n"," ' | | bitch in lingerie getting her wet cunt pounded ',\n"," ' | | a very hot black tranny is mastu ',\n"," ' | | old bitch pleases hot-looking young stud ',\n"," ' | | german milf getting young and old cock in her pussy ',\n"," ' | | small tits ghetto whore fucking with not her stepdad ',\n"," ' | | cutie lesbian teens toy slits ',\n"," ' | | hairy alicia silver . tinslee reagan hairy pussy | ',\n"," ' | | homemade pussy eating ',\n"," ' the xbox one would be so much cooler if they put a bird on it',\n"," ' dont tell me if my gf was a hoe before me if im happy.',\n"," ' if you a hoe an try to get serious with someone dont expect to be anything more then a piece of meat to them',\n"," ' tow truck. ',\n"," ' its the grape crackhead charlie brown',\n"," ' has a highschool graduation rate near 50% and thats why they have so many uninformed ',\n"," ' would last 15mins if they let the president talk all that standing up clapping is for the birds',\n"," ' me being a bad bitch ',\n"," ' my precious gook baby ',\n"," ' to when i used to be good at rapping...now ima bitch ',\n"," ' when i took my likkle monkey jimmys ',\n"," ' state like mississippi opposed to minimum wage child labor laws unions is pro-scab sweatshop work - pretty much .',\n"," ' to being bitches . drinking mikes bc we sucked ',\n"," ' - rough mock for the base of what will eventually be an ashtray @ tiki ti ',\n"," ' my bitch ',\n"," ' nah we not gonna sit down we gonna walk it out bitch.',\n"," ' bitch get naked. works 10 times out of 10 if shes drunk )',\n"," ' loving the show this morning. chris is directing the conversation beautifully. make the teabaggers talk',\n"," ' ',\n"," ' bitch',\n"," ' all the bad bitches ',\n"," ' bitch ',\n"," ' ..everytime i come in the kitchen you in the kitchen in the goddamn refrigerator. eatin up all the pussy',\n"," ' sick of guys who sing like pussies. where are the rock type men',\n"," ' if u a real bitch',\n"," '$100 bid to go on a date with zack morris oh that dreamy son of a bitch',\n"," '$3 bud lites and $4 well shots at the bar tn plus im giving away a trip to las vegas. so if youre not a cunt come visit me at bourbon st',\n"," '$60 torch down the drain cause either i was to high and lost it or one of my \"niggas\" finessed that hoe fuckkkkk ittt',\n"," ' \"killer line\" josh smith dropped a killer trash talk line on kenneth .',\n"," ' a piece of pussy ',\n"," ' i love salad anyway fuck you hoes eat a salad.',\n"," ' plus sheryl crow ',\n"," ' every bitch n my passenger seat i dun fucked at least one time',\n"," '= its true that the early bird.. gets the worm first',\n"," ' dirty whore. i love you. but you a hoe. but i love you. jesus is watching.',\n"," ' this hoe got a school shirt on sucking dick ',\n"," ' a lotta fck niggas on this here twitter. really be talking like bitches.',\n"," ' these bitches started shooting at my party. fuck new orleans',\n"," ' bitches giving back rubs ',\n"," 'never been a coon grew up with bokoo coons tho but never was 1 i did some coon shit tho',\n"," ' nigga was smashing his hoe had his hoe paying for a condo and he still with her yep fucboy',\n"," ' watching niggers fight on youtube/vine/ig',\n"," ' dont like me have a with the rest of the bitches waiting for me to give a fuck ',\n"," ' id rather be called nigger than a uncle tom or a mark',\n"," ' bet yall bitches was deaf to mc lytes words about being treated like a queen huh',\n"," ' hi-ho ',\n"," ' onea yall btches gon end up dead over a screen shot thinkn that sht funny...aint too many niccas gon laugh at that b',\n"," ' congrats youve turned a hoe into a housewife dont get shitty when your guys start singing they hit it first. ',\n"," ' got ur bitch tip toeing on my marble floors.......',\n"," ' - omg just thinccin of you makes me laugh we use to stay talking shit in 3rd period you cute . you my bitch ',\n"," ' you needa stop sucking dick hoe ',\n"," ' \"omg lil b followed me yassss\" bitch he follow everybody shut yo ass up',\n"," ' hop off hoe. come on ',\n"," '- lmao my nigga . lets go half on a weed brownie we will be laughing hard as hell in senior seminar',\n"," ' . if you aint a ho get up out my trap hooouseee.',\n"," ' - ugh bitch i love you . that a s s your just simply flawless i remember when you cute a peice of your hair hella short ',\n"," ' pussy ride dick like she a jamaican / \\\\ / \\\\ . */. |. &.~ . | >. \\\\ $. / \\\\ . ) .*',\n"," ' on the pussy ',\n"," ' loyal pussy .',\n"," ' my bitch ',\n"," ' is the most important thing. all this temporary bullshit and lies is fa the birds. kill that ',\n"," ' racist all month .. fuck u honkey',\n"," ' gucci b having me on my rude shit lol thats not nice \" \" that bitch aint worth a quarter \"\"',\n"," ' mimi too old to be covering her titties during sex bitch you childish',\n"," ' lmfao if you watching porn . beating off . yo homie text u . it show his name in the banner youre a faggot',\n"," ' bruh these hoes gotta be stupid.',\n"," ' somebody gonna die theres a bitch on njt setting up a lean as we tweet',\n"," ' yall have boring sex. nope.. i lick the side of my bitch face when im hittin it from the back',\n"," ' of course cooders nudes are trash. she lives in the dmv what did you expect .',\n"," ' my stomach in pain like a mufucka this the nigga thats rating bitches 3/10 ',\n"," ' bitches get stuff done. ',\n"," ' fucc nicca yu pose to be pullin up',\n"," ' maaaaannnn i hope so did we get rid of john legend looking charlie batch',\n"," ' mike calls me t-bird ',\n"," ' niggas sending screenshots of me to they bitches like \" stop texting cuh \" ',\n"," ' this white bitch think she miley cyrus ',\n"," ' i seen a thot ass bitch in some high top whites',\n"," ' nicca gotta team full of worsum hoes',\n"," ' this hoe just dmd me sayin \"never give up in your dreams\"...fuckin fortune cookie ass hoe fuck out my dms',\n"," ' when a dyke get pregnant by mistake >.>.>.>.>.',\n"," ' \"bitch i know you got games on your phone\" ',\n"," ' bitch my lrt',\n"," ' burnt pussy lips',\n"," ' i just said that my tl gotta chill with this pretty face challenge foolishness yall hoes agg',\n"," ' nah if you round me you do molly only bitches with no nigga do mollies...',\n"," ' played that nigga smh bitches are so shady... oh my god .',\n"," ' no bitch go away \" tu puta madre \"',\n"," ' bitch was mad af ',\n"," ' i hate you cyrus ho is a rookie slut. getting the cash after the date nope nope nope.',\n"," ' when youre trying to relax but your pussy is shooting out light beams ',\n"," ' murda out here sucking bitches ',\n"," ' bitch if youre the hobbit you need to let me know right now ',\n"," ' these folks so bad. im just here to talk trash.',\n"," ' brittany bitch u my dog man ',\n"," ' smh bitch sellin her ass',\n"," ...]"]},"metadata":{},"execution_count":55}]},{"cell_type":"code","source":["stemmed_stripped_hashtags_preprocessed_tweets = []\n","for t in stripped_hashtags_preprocessed_tweets:\n"," stemmed_stripped_hashtags_preprocessed_tweets.append(stemming(t))"],"metadata":{"id":"JCa1KHKU_BD7","executionInfo":{"status":"ok","timestamp":1725033753012,"user_tz":-180,"elapsed":9340,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":56,"outputs":[]},{"cell_type":"code","source":["pd.dtype(stemmed_stripped_hashtags_preprocessed_tweets)"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":141},"id":"6nBgMsPT_YXX","executionInfo":{"status":"error","timestamp":1725034349601,"user_tz":-180,"elapsed":361,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"73ae18e0-05a2-4b57-d7fd-e8c3bf13c7c1"},"execution_count":64,"outputs":[{"output_type":"error","ename":"AttributeError","evalue":"module 'pandas' has no attribute 'dtype'","traceback":["\u001b[0;31m---------------------------------------------------------------------------\u001b[0m","\u001b[0;31mAttributeError\u001b[0m Traceback (most recent call last)","\u001b[0;32m\u001b[0m in \u001b[0;36m\u001b[0;34m()\u001b[0m\n\u001b[0;32m----> 1\u001b[0;31m \u001b[0mpd\u001b[0m\u001b[0;34m.\u001b[0m\u001b[0mdtype\u001b[0m\u001b[0;34m(\u001b[0m\u001b[0mstemmed_stripped_hashtags_preprocessed_tweets\u001b[0m\u001b[0;34m)\u001b[0m\u001b[0;34m\u001b[0m\u001b[0;34m\u001b[0m\u001b[0m\n\u001b[0m","\u001b[0;31mAttributeError\u001b[0m: module 'pandas' has no attribute 'dtype'"]}]},{"cell_type":"code","source":["# prompt: convert stemmed_stripped_hashtags_preprocessed_tweets to df\n","\n","import pandas as pd\n","df_stemmed = pd.DataFrame(stemmed_stripped_hashtags_preprocessed_tweets)\n"],"metadata":{"id":"5JNXwoewBmJ0","executionInfo":{"status":"ok","timestamp":1725034422413,"user_tz":-180,"elapsed":855,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":65,"outputs":[]},{"cell_type":"code","source":["df_stemmed"],"metadata":{"colab":{"base_uri":"https://localhost:8080/","height":444},"id":"jysNbs_GDWBp","executionInfo":{"status":"ok","timestamp":1725034435393,"user_tz":-180,"elapsed":385,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}},"outputId":"a1cd3738-bbe4-4b21-90bf-a01a98d03afc"},"execution_count":66,"outputs":[{"output_type":"execute_result","data":{"text/plain":[" 0 1 2 3 4 5 6 7 \\\n","0 as a woman you shouldnt complain about clean \n","1 boy dat cold...tyga dwn bad for cuffin dat \n","2 dawg you ever fuck a bitch and she \n","3 she look like a tranni None None None \n","4 the shit you hear about me might be \n","... ... ... ... ... ... ... ... ... \n","24778 you a muthaf***in lie right hi tl is \n","24779 youv gone and broke the wrong heart babi \n","24780 young buck wanna eat.. dat nigguh like i \n","24781 youu got wild bitch tellin you lie None \n","24782 ~~ruffl | ntac eileen dahlia - beauti color \n","\n"," 8 9 ... 42 43 44 45 46 47 48 49 \\\n","0 up your ... None None None None None None None None \n","1 hoe in ... None None None None None None None None \n","2 start to ... None None None None None None None None \n","3 None None ... None None None None None None None None \n","4 true or ... None None None None None None None None \n","... ... ... ... ... ... ... ... ... ... ... ... \n","24778 trash . ... None None None None None None None None \n","24779 and drove ... None None None None None None None None \n","24780 aint fuckin ... None None None None None None None None \n","24781 None None ... None None None None None None None None \n","24782 combin of ... None None None None None None None None \n","\n"," 50 51 \n","0 None None \n","1 None None \n","2 None None \n","3 None None \n","4 None None \n","... ... ... \n","24778 None None \n","24779 None None \n","24780 None None \n","24781 None None \n","24782 None None \n","\n","[24783 rows x 52 columns]"],"text/html":["\n","
\n","
\n","\n","\n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n"," \n","
0123456789...42434445464748495051
0asawomanyoushouldntcomplainaboutcleanupyour...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
1boydatcold...tygadwnbadforcuffindathoein...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
2dawgyoueverfuckabitchandshestartto...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
3shelooklikeatranniNoneNoneNoneNoneNone...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
4theshityouhearaboutmemightbetrueor...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
..................................................................
24778youamuthaf***inlierighthitlistrash....NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
24779youvgoneandbrokethewrongheartbabianddrove...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
24780youngbuckwannaeat..datnigguhlikeiaintfuckin...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
24781youugotwildbitchtellinyoulieNoneNoneNone...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
24782~~ruffl|ntaceileendahlia-beauticolorcombinof...NoneNoneNoneNoneNoneNoneNoneNoneNoneNone
\n","

24783 rows × 52 columns

\n","
\n","
\n","\n","
\n"," \n","\n"," \n","\n"," \n","
\n","\n","\n","
\n"," \n","\n","\n","\n"," \n","
\n","\n","
\n"," \n"," \n"," \n","
\n","\n","
\n","
\n"],"application/vnd.google.colaboratory.intrinsic+json":{"type":"dataframe","variable_name":"df_stemmed"}},"metadata":{},"execution_count":66}]},{"cell_type":"code","source":["df_stemmed.to_csv('stemmed_tweets.csv', index=False)"],"metadata":{"id":"1eHpKOowCFHl","executionInfo":{"status":"ok","timestamp":1725034566351,"user_tz":-180,"elapsed":375,"user":{"displayName":"Tharwat Elsayed","userId":"17509682478405061653"}}},"execution_count":70,"outputs":[]},{"cell_type":"code","source":[],"metadata":{"id":"ABhoRrWwCUUp"},"execution_count":null,"outputs":[]}]}