Spaces:
Build error
Build error
Commit ·
aebd19f
1
Parent(s): 51c04cd
Initial commit
Browse files- README.md +1 -1
- app.py +43 -0
- main.ipynb +803 -0
- requirements.txt +4 -0
- sentimentAnalysis_model.pkl +3 -0
- sentiment_analysis.csv +500 -0
- vectorizer.pkl +3 -0
README.md
CHANGED
|
@@ -11,4 +11,4 @@ license: mit
|
|
| 11 |
short_description: An app to use for categorizing user input into 3 classes
|
| 12 |
---
|
| 13 |
|
| 14 |
-
|
|
|
|
| 11 |
short_description: An app to use for categorizing user input into 3 classes
|
| 12 |
---
|
| 13 |
|
| 14 |
+
Dataset by Ismiel Hossen Abir. Link: https://www.kaggle.com/datasets/mdismielhossenabir/sentiment-analysis
|
app.py
ADDED
|
@@ -0,0 +1,43 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
import streamlit as st
|
| 2 |
+
import joblib
|
| 3 |
+
import re
|
| 4 |
+
import nltk
|
| 5 |
+
from nltk.corpus import stopwords
|
| 6 |
+
from sklearn.feature_extraction.text import TfidfVectorizer
|
| 7 |
+
|
| 8 |
+
nltk.download('stopwords')
|
| 9 |
+
stop_words = set(stopwords.words('english'))
|
| 10 |
+
|
| 11 |
+
# LOAD MODEL AND VECTORIZER
|
| 12 |
+
with open("sentimentAnalysis_model.pkl", "rb") as model_file:
|
| 13 |
+
model = joblib.load(model_file)
|
| 14 |
+
with open("vectorizer.pkl", "rb") as vectorizer_file:
|
| 15 |
+
vectorizer = joblib.load(vectorizer_file)
|
| 16 |
+
|
| 17 |
+
# MAPPING RESULTS
|
| 18 |
+
sentiment_mapping = {0: "Neutral", 1: "Positive", 2: "Negative"}
|
| 19 |
+
|
| 20 |
+
# FUNCTION TO REDUCE TEXT TO ITS MOST BASIC FORM
|
| 21 |
+
def clean_text(text):
|
| 22 |
+
text = text.lower()
|
| 23 |
+
text = re.sub(r'[^a-zA-Z\s]', '', text)
|
| 24 |
+
text = ' '.join([word for word in text.split() if word not in stop_words])
|
| 25 |
+
return text
|
| 26 |
+
|
| 27 |
+
# STREAMLIT UI
|
| 28 |
+
st.title("Sentiment Analysis App")
|
| 29 |
+
st.write("Enter text below to analyze its sentiment.")
|
| 30 |
+
|
| 31 |
+
user_input = st.text_area("Enter text:")
|
| 32 |
+
|
| 33 |
+
if st.button("Analyze Sentiment"):
|
| 34 |
+
if user_input:
|
| 35 |
+
cleaned_input = clean_text(user_input)
|
| 36 |
+
transformed_input = vectorizer.transform([cleaned_input])
|
| 37 |
+
|
| 38 |
+
prediction = model.predict(transformed_input)[0]
|
| 39 |
+
sentiment = sentiment_mapping[prediction]
|
| 40 |
+
|
| 41 |
+
st.write(f"Predicted Sentiment: **{sentiment}**")
|
| 42 |
+
else:
|
| 43 |
+
st.write("Please enter some text to analyze.")
|
main.ipynb
ADDED
|
@@ -0,0 +1,803 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
{
|
| 2 |
+
"cells": [
|
| 3 |
+
{
|
| 4 |
+
"cell_type": "markdown",
|
| 5 |
+
"metadata": {},
|
| 6 |
+
"source": [
|
| 7 |
+
"<h1>Sentiment Analysis Model</h1>\n",
|
| 8 |
+
"<h5>Created by: Cristopher Ian Artacho</h5>\n",
|
| 9 |
+
"<h5>BSCS 3A</h5>\n",
|
| 10 |
+
"\n",
|
| 11 |
+
"<h5>Using a dataset from kaggle, the aim of this project is to train a model that could identify a user statement as \"Positive\", \"Negative\", or \"Neutral\".</h5>"
|
| 12 |
+
]
|
| 13 |
+
},
|
| 14 |
+
{
|
| 15 |
+
"cell_type": "code",
|
| 16 |
+
"execution_count": 496,
|
| 17 |
+
"metadata": {},
|
| 18 |
+
"outputs": [
|
| 19 |
+
{
|
| 20 |
+
"name": "stderr",
|
| 21 |
+
"output_type": "stream",
|
| 22 |
+
"text": [
|
| 23 |
+
"[nltk_data] Downloading package stopwords to C:\\Users\\Cristopher\n",
|
| 24 |
+
"[nltk_data] Artacho\\AppData\\Roaming\\nltk_data...\n",
|
| 25 |
+
"[nltk_data] Package stopwords is already up-to-date!\n"
|
| 26 |
+
]
|
| 27 |
+
}
|
| 28 |
+
],
|
| 29 |
+
"source": [
|
| 30 |
+
"import pandas as pd\n",
|
| 31 |
+
"import numpy as np\n",
|
| 32 |
+
"import seaborn as sns\n",
|
| 33 |
+
"import matplotlib.pyplot as plt\n",
|
| 34 |
+
"from sklearn.model_selection import train_test_split\n",
|
| 35 |
+
"from sklearn.feature_extraction.text import TfidfVectorizer\n",
|
| 36 |
+
"from sklearn.linear_model import LogisticRegression\n",
|
| 37 |
+
"from sklearn.metrics import accuracy_score, classification_report, confusion_matrix\n",
|
| 38 |
+
"import nltk\n",
|
| 39 |
+
"from nltk.corpus import stopwords\n",
|
| 40 |
+
"import re\n",
|
| 41 |
+
"\n",
|
| 42 |
+
"import joblib\n",
|
| 43 |
+
"\n",
|
| 44 |
+
"nltk.download('stopwords')\n",
|
| 45 |
+
"stop_words = set(stopwords.words('english'))"
|
| 46 |
+
]
|
| 47 |
+
},
|
| 48 |
+
{
|
| 49 |
+
"cell_type": "markdown",
|
| 50 |
+
"metadata": {},
|
| 51 |
+
"source": [
|
| 52 |
+
"<h1>Data Exploration and Preprocessing</h1>\n",
|
| 53 |
+
"<h5>In this process, we will get to understand our data, and the dataset. In case that there are missing values, noise, and/or errors in the data, we will need to clean it in order to reduce the complexity of the data, allowing the model to better understand the dataset. </h5>"
|
| 54 |
+
]
|
| 55 |
+
},
|
| 56 |
+
{
|
| 57 |
+
"cell_type": "code",
|
| 58 |
+
"execution_count": 497,
|
| 59 |
+
"metadata": {},
|
| 60 |
+
"outputs": [],
|
| 61 |
+
"source": [
|
| 62 |
+
"# Load dataset\n",
|
| 63 |
+
"df = pd.read_csv(\"sentiment_analysis.csv\") # Replace with your actual dataset path"
|
| 64 |
+
]
|
| 65 |
+
},
|
| 66 |
+
{
|
| 67 |
+
"cell_type": "code",
|
| 68 |
+
"execution_count": 498,
|
| 69 |
+
"metadata": {},
|
| 70 |
+
"outputs": [],
|
| 71 |
+
"source": [
|
| 72 |
+
"# Keep only relevant columns\n",
|
| 73 |
+
"df = df[[\"text\", \"sentiment\"]]"
|
| 74 |
+
]
|
| 75 |
+
},
|
| 76 |
+
{
|
| 77 |
+
"cell_type": "code",
|
| 78 |
+
"execution_count": 499,
|
| 79 |
+
"metadata": {},
|
| 80 |
+
"outputs": [
|
| 81 |
+
{
|
| 82 |
+
"name": "stdout",
|
| 83 |
+
"output_type": "stream",
|
| 84 |
+
"text": [
|
| 85 |
+
"<class 'pandas.core.frame.DataFrame'>\n",
|
| 86 |
+
"RangeIndex: 499 entries, 0 to 498\n",
|
| 87 |
+
"Data columns (total 2 columns):\n",
|
| 88 |
+
" # Column Non-Null Count Dtype \n",
|
| 89 |
+
"--- ------ -------------- ----- \n",
|
| 90 |
+
" 0 text 499 non-null object\n",
|
| 91 |
+
" 1 sentiment 499 non-null object\n",
|
| 92 |
+
"dtypes: object(2)\n",
|
| 93 |
+
"memory usage: 7.9+ KB\n"
|
| 94 |
+
]
|
| 95 |
+
}
|
| 96 |
+
],
|
| 97 |
+
"source": [
|
| 98 |
+
"df.info()"
|
| 99 |
+
]
|
| 100 |
+
},
|
| 101 |
+
{
|
| 102 |
+
"cell_type": "code",
|
| 103 |
+
"execution_count": 500,
|
| 104 |
+
"metadata": {},
|
| 105 |
+
"outputs": [
|
| 106 |
+
{
|
| 107 |
+
"name": "stdout",
|
| 108 |
+
"output_type": "stream",
|
| 109 |
+
"text": [
|
| 110 |
+
"394\n",
|
| 111 |
+
"3\n"
|
| 112 |
+
]
|
| 113 |
+
}
|
| 114 |
+
],
|
| 115 |
+
"source": [
|
| 116 |
+
"for col in df:\n",
|
| 117 |
+
" print(df[col].nunique())"
|
| 118 |
+
]
|
| 119 |
+
},
|
| 120 |
+
{
|
| 121 |
+
"cell_type": "code",
|
| 122 |
+
"execution_count": 501,
|
| 123 |
+
"metadata": {},
|
| 124 |
+
"outputs": [
|
| 125 |
+
{
|
| 126 |
+
"data": {
|
| 127 |
+
"text/plain": [
|
| 128 |
+
"sentiment\n",
|
| 129 |
+
"neutral 199\n",
|
| 130 |
+
"positive 166\n",
|
| 131 |
+
"negative 134\n",
|
| 132 |
+
"Name: count, dtype: int64"
|
| 133 |
+
]
|
| 134 |
+
},
|
| 135 |
+
"execution_count": 501,
|
| 136 |
+
"metadata": {},
|
| 137 |
+
"output_type": "execute_result"
|
| 138 |
+
}
|
| 139 |
+
],
|
| 140 |
+
"source": [
|
| 141 |
+
"df['sentiment'].value_counts()"
|
| 142 |
+
]
|
| 143 |
+
},
|
| 144 |
+
{
|
| 145 |
+
"cell_type": "code",
|
| 146 |
+
"execution_count": 502,
|
| 147 |
+
"metadata": {},
|
| 148 |
+
"outputs": [
|
| 149 |
+
{
|
| 150 |
+
"data": {
|
| 151 |
+
"image/png": "iVBORw0KGgoAAAANSUhEUgAAAjsAAAHHCAYAAABZbpmkAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAAA9M0lEQVR4nO3de1xUdf7H8fcgMoBcFAUBRVC8l5KaIpqCl0Q0N0srjTZv6dYPNSU347d5wXIpy0vrWm43L6XldlHT0jRTTEXzsmqmkbKY7gpqJiKayOX8/ujh/JoALwjOcHo9H4/zeHC+3+98z2fGEd+e850zFsMwDAEAAJiUi6MLAAAAqEyEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQAAYGqEHQCSpKFDhyosLMzRZTjcwoULZbFYdPTo0Uo/1m9f86NHj8pisejll1+u9GNL0tSpU2WxWG7JsQBHIuwADvDNN99o4MCBCg0Nlbu7u+rVq6e7775bc+fOrdTjnjhxQlOnTtXevXsr9TiV5eLFi5o6dao2bdp0XeM3bdoki8Vi26xWq+rWrauYmBj99a9/1enTpx1S163kzLUBt4qF78YCbq1t27apW7duatCggYYMGaLAwEAdP35c27dvV0ZGho4cOVJpx961a5fat2+vBQsWaOjQoXZ9BQUFKi4ultVqrbTj36wff/xR/v7+mjJliqZOnXrN8Zs2bVK3bt00duxYtW/fXkVFRTp9+rS2bdumVatWydfXV//85z/VvXt322OKiopUUFAgq9V63Wc9brSuK377mh89elQNGzbUSy+9pAkTJlz3POWtrbCwUIWFhXJ3d6+QYwHOytXRBQC/N9OnT5evr6927typmjVr2vWdOnXKMUVJql69usOOXdm6dOmigQMH2rXt27dPvXr10oABA3Tw4EEFBQVJkqpVq6Zq1apVaj0XLlxQjRo1HP6au7q6ytWVfwZgflzGAm6xjIwM3XbbbSWCjiQFBASUaHv33XfVrl07eXh4yM/PT4MGDdLx48ftxsTExOj222/XwYMH1a1bN3l6eqpevXqaMWOGbcymTZvUvn17SdKwYcNsl3YWLlwo6errR+bNm6dGjRrJ09NTvXr10vHjx2UYhp577jnVr19fHh4euvfee/XTTz+VqH/NmjXq0qWLatSoIW9vb/Xt21fffvut3ZihQ4fKy8tL//3vf9W/f395eXnJ399fEyZMUFFRka0ef39/SVJycrKt/hs5k/JrERERmjNnjnJycvT3v//d1l7amp1du3YpNjZWderUkYeHhxo2bKjhw4dfV11XnltGRob69Okjb29vxcfHl/qa/9rs2bMVGhoqDw8PRUdH68CBA3b9MTExiomJKfG4X895rdpKW7NTWFio5557TuHh4bJarQoLC9P//u//Kj8/325cWFiY7rnnHm3ZskUdOnSQu7u7GjVqpMWLF5f+ggMORNgBbrHQ0FDt3r27xD9epZk+fboeffRRNWnSRLNmzdK4ceO0YcMGde3aVTk5OXZjz549q969eysiIkIzZ85U8+bNNXHiRK1Zs0aS1KJFC02bNk2SNGrUKL3zzjt655131LVr16vWsGTJEr366qsaM2aMnnrqKaWmpurBBx/Us88+q7Vr12rixIkaNWqUVq1aVeLSyzvvvKO+ffvKy8tLL774oiZNmqSDBw/qrrvuKrEAuKioSLGxsapdu7ZefvllRUdHa+bMmXr99dclSf7+/nrttdckSffdd5+t/vvvv/+ar2NZBg4cKA8PD61bt67MMadOnVKvXr109OhRPfPMM5o7d67i4+O1ffv2666rsLBQsbGxCggI0Msvv6wBAwZcta7Fixfrb3/7mxISEpSUlKQDBw6oe/fuOnny5A09v/K8Zo899pgmT56stm3bavbs2YqOjlZKSooGDRpUYuyRI0c0cOBA3X333Zo5c6Zq1aqloUOHlgizgMMZAG6pdevWGdWqVTOqVatmREVFGU8//bTx+eefG5cvX7Ybd/ToUaNatWrG9OnT7dq/+eYbw9XV1a49OjrakGQsXrzY1pafn28EBgYaAwYMsLXt3LnTkGQsWLCgRF1DhgwxQkNDbfuZmZmGJMPf39/IycmxtSclJRmSjIiICKOgoMDWPnjwYMPNzc24dOmSYRiGcf78eaNmzZrGyJEj7Y6TnZ1t+Pr62rUPGTLEkGRMmzbNbmybNm2Mdu3a2fZPnz5tSDKmTJlSov7SbNy40ZBkfPDBB2WOiYiIMGrVqmXbX7BggSHJyMzMNAzDMJYvX25IMnbu3FnmHFer68pze+aZZ0rtK+019/DwMP7zn//Y2nfs2GFIMsaPH29ri46ONqKjo68559VqmzJlivHrfwb27t1rSDIee+wxu3ETJkwwJBlffvmlrS00NNSQZGzevNnWdurUKcNqtRpPPfVUiWMBjsSZHeAWu/vuu5WWlqY//OEP2rdvn2bMmKHY2FjVq1dPn3zyiW3cxx9/rOLiYj344IP68ccfbVtgYKCaNGmijRs32s3r5eWlRx55xLbv5uamDh066N///vdN1fvAAw/I19fXth8ZGSlJeuSRR+zWe0RGRury5cv673//K0lav369cnJyNHjwYLv6q1WrpsjIyBL1S9Ljjz9ut9+lS5ebrv9avLy8dP78+TL7r1xuXL16tQoKCsp9nCeeeOK6x/bv31/16tWz7Xfo0EGRkZH67LPPyn3863Fl/sTERLv2p556SpL06aef2rW3bNlSXbp0se37+/urWbNmlf5nBtwowg7gAO3bt9fHH3+ss2fP6uuvv1ZSUpLOnz+vgQMH6uDBg5Kkw4cPyzAMNWnSRP7+/nbboUOHSixmrl+/fon1F7Vq1dLZs2dvqtYGDRrY7V8JPiEhIaW2Xzne4cOHJUndu3cvUf+6detK1O/u7m5bX1KR9V9LXl6evL29y+yPjo7WgAEDlJycrDp16ujee+/VggULSqxhuRpXV1fVr1//usc3adKkRFvTpk0r/d4/P/zwg1xcXNS4cWO79sDAQNWsWVM//PCDXftv3xvSrfkzA24Uy/ABB3Jzc1P79u3Vvn17NW3aVMOGDdMHH3ygKVOmqLi4WBaLRWvWrCn100FeXl52+2V9gsi4ybtLlDXvtY5XXFws6Zd1O4GBgSXG/fZTQJX9CajSFBQU6Pvvv9ftt99e5hiLxaIPP/xQ27dv16pVq/T5559r+PDhmjlzprZv317iz6E0VqtVLi4V+39Li8VS6p/tlQXdNzv39ais9xxQ0Qg7gJO48847JUlZWVmSpPDwcBmGoYYNG6pp06YVcoxbebfc8PBwSb98wqxnz54VMmdF1//hhx/q559/Vmxs7DXHduzYUR07dtT06dO1dOlSxcfH6/3339djjz1W4XVdOSv2a99//73dJ7dq1apV6uWi3559uZHaQkNDVVxcrMOHD6tFixa29pMnTyonJ0ehoaHXPRfgTLiMBdxiGzduLPV/vlfWSzRr1kySdP/996tatWpKTk4uMd4wDJ05c+aGj12jRg1JKvFJrsoQGxsrHx8f/fWvfy11rUt57l7s6ekpqWLq37dvn8aNG6datWopISGhzHFnz54t8frfcccdkmS7lFWRdUnSihUrbGufJOnrr7/Wjh07FBcXZ2sLDw/Xd999Z/c67tu3T1u3brWb60Zq69OnjyRpzpw5du2zZs2SJPXt2/eGngfgLDizA9xiY8aM0cWLF3XfffepefPmunz5srZt26Zly5YpLCxMw4YNk/TLP2bPP/+8kpKSdPToUfXv31/e3t7KzMzU8uXLNWrUqBu+y254eLhq1qyp+fPny9vbWzVq1FBkZKQaNmxY4c/Tx8dHr732mv74xz+qbdu2GjRokPz9/XXs2DF9+umn6ty5s939ba6Hh4eHWrZsqWXLlqlp06by8/PT7bffftXLUJL01Vdf6dKlSyoqKtKZM2e0detWffLJJ/L19dXy5ctLvcx2xaJFi/Tqq6/qvvvuU3h4uM6fP6833nhDPj4+tnBQ3rrK0rhxY91111164oknlJ+frzlz5qh27dp6+umnbWOGDx+uWbNmKTY2ViNGjNCpU6c0f/583XbbbcrNzS3XaxYREaEhQ4bo9ddfV05OjqKjo/X1119r0aJF6t+/v7p161au5wM4nKM+Bgb8Xq1Zs8YYPny40bx5c8PLy8twc3MzGjdubIwZM8Y4efJkifEfffSRcddddxk1atQwatSoYTRv3txISEgw0tPTbWOio6ON2267rcRjf/sxZMMwjJUrVxotW7Y0XF1d7T6GXtbHoF966SW7x5f1ce4rH9n+7Ue0N27caMTGxhq+vr6Gu7u7ER4ebgwdOtTYtWuXXZ01atQoUf9vPxptGIaxbds2o127doabm9s1P4Z+pdYrW/Xq1Q1/f3+ja9euxvTp041Tp06VeMxvP3q+Z88eY/DgwUaDBg0Mq9VqBAQEGPfcc49d/Verq6zndqWvrNd85syZRkhIiGG1Wo0uXboY+/btK/H4d99912jUqJHh5uZm3HHHHcbnn39e6p95WbWV9voWFBQYycnJRsOGDY3q1asbISEhRlJSku2WAleEhoYaffv2LVFTWR+JBxyJ78YCAACmxpodAABgaoQdAABgaoQdAABgaoQdAABgaoQdAABgaoQdAABgatxUUL98h8+JEyfk7e19S2+nDwAAys8wDJ0/f17BwcFX/f45wo6kEydOlPgGZwAAUDUcP35c9evXL7OfsCPJ29tb0i8vlo+Pj4OrAQAA1yM3N1chISG2f8fLQtjR/38rsI+PD2EHAIAq5lpLUFigDAAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATI2wAwAATM2hYSclJUXt27eXt7e3AgIC1L9/f6Wnp9uNuXTpkhISElS7dm15eXlpwIABOnnypN2YY8eOqW/fvvL09FRAQID+/Oc/q7Cw8FY+FQAA4KQcGnZSU1OVkJCg7du3a/369SooKFCvXr104cIF25jx48dr1apV+uCDD5SamqoTJ07o/vvvt/UXFRWpb9++unz5srZt26ZFixZp4cKFmjx5siOeEgAAcDIWwzAMRxdxxenTpxUQEKDU1FR17dpV586dk7+/v5YuXaqBAwdKkr777ju1aNFCaWlp6tixo9asWaN77rlHJ06cUN26dSVJ8+fP18SJE3X69Gm5ubld87i5ubny9fXVuXPn+G4sAACqiOv999up1uycO3dOkuTn5ydJ2r17twoKCtSzZ0/bmObNm6tBgwZKS0uTJKWlpalVq1a2oCNJsbGxys3N1bffflvqcfLz85Wbm2u3AQAAc3KasFNcXKxx48apc+fOuv322yVJ2dnZcnNzU82aNe3G1q1bV9nZ2bYxvw46V/qv9JUmJSVFvr6+ti0kJKSCnw0AAHAWThN2EhISdODAAb3//vuVfqykpCSdO3fOth0/frzSjwkAABzD1dEFSNLo0aO1evVqbd68WfXr17e1BwYG6vLly8rJybE7u3Py5EkFBgbaxnz99dd28135tNaVMb9ltVpltVor+FkAAK6l3Z8XO7oEOJHdLz16S47j0DM7hmFo9OjRWr58ub788ks1bNjQrr9du3aqXr26NmzYYGtLT0/XsWPHFBUVJUmKiorSN998o1OnTtnGrF+/Xj4+PmrZsuWteSIAAMBpOfTMTkJCgpYuXaqVK1fK29vbtsbG19dXHh4e8vX11YgRI5SYmCg/Pz/5+PhozJgxioqKUseOHSVJvXr1UsuWLfXHP/5RM2bMUHZ2tp599lklJCRw9gYAADg27Lz22muSpJiYGLv2BQsWaOjQoZKk2bNny8XFRQMGDFB+fr5iY2P16quv2sZWq1ZNq1ev1hNPPKGoqCjVqFFDQ4YM0bRp027V0wAAAE7Mqe6z4yjcZwcAbg3W7ODXbnbNTpW8zw4AAEBFI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTc2jY2bx5s/r166fg4GBZLBatWLHCrt9isZS6vfTSS7YxYWFhJfpfeOGFW/xMAACAs3Jo2Llw4YIiIiI0b968UvuzsrLstrffflsWi0UDBgywGzdt2jS7cWPGjLkV5QMAgCrA1ZEHj4uLU1xcXJn9gYGBdvsrV65Ut27d1KhRI7t2b2/vEmMBAACkKrRm5+TJk/r00081YsSIEn0vvPCCateurTZt2uill15SYWHhVefKz89Xbm6u3QYAAMzJoWd2bsSiRYvk7e2t+++/36597Nixatu2rfz8/LRt2zYlJSUpKytLs2bNKnOulJQUJScnV3bJAADACVSZsPP2228rPj5e7u7udu2JiYm2n1u3bi03Nzf96U9/UkpKiqxWa6lzJSUl2T0uNzdXISEhlVM4AABwqCoRdr766iulp6dr2bJl1xwbGRmpwsJCHT16VM2aNSt1jNVqLTMIAQAAc6kSa3beeusttWvXThEREdccu3fvXrm4uCggIOAWVAYAAJydQ8/s5OXl6ciRI7b9zMxM7d27V35+fmrQoIGkXy4xffDBB5o5c2aJx6elpWnHjh3q1q2bvL29lZaWpvHjx+uRRx5RrVq1btnzAAAAzsuhYWfXrl3q1q2bbf/KOpohQ4Zo4cKFkqT3339fhmFo8ODBJR5vtVr1/vvva+rUqcrPz1fDhg01fvx4u/U4AADg981iGIbh6CIcLTc3V76+vjp37px8fHwcXQ4AmFa7Py92dAlwIrtfevSmHn+9/35XiTU7AAAA5UXYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAApkbYAQAAplYlvvW8KuCuoPi1m70rKACg4nBmBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmJpDw87mzZvVr18/BQcHy2KxaMWKFXb9Q4cOlcVisdt69+5tN+ann35SfHy8fHx8VLNmTY0YMUJ5eXm38FkAAABn5tCwc+HCBUVERGjevHlljundu7eysrJs23vvvWfXHx8fr2+//Vbr16/X6tWrtXnzZo0aNaqySwcAAFWEqyMPHhcXp7i4uKuOsVqtCgwMLLXv0KFDWrt2rXbu3Kk777xTkjR37lz16dNHL7/8soKDgyu8ZgAAULU4/ZqdTZs2KSAgQM2aNdMTTzyhM2fO2PrS0tJUs2ZNW9CRpJ49e8rFxUU7duwoc878/Hzl5ubabQAAwJycOuz07t1bixcv1oYNG/Tiiy8qNTVVcXFxKioqkiRlZ2crICDA7jGurq7y8/NTdnZ2mfOmpKTI19fXtoWEhFTq8wAAAI7j0MtY1zJo0CDbz61atVLr1q0VHh6uTZs2qUePHuWeNykpSYmJibb93NxcAg8AACbl1Gd2fqtRo0aqU6eOjhw5IkkKDAzUqVOn7MYUFhbqp59+KnOdj/TLOiAfHx+7DQAAmFOVCjv/+c9/dObMGQUFBUmSoqKilJOTo927d9vGfPnllyouLlZkZKSjygQAAE7EoZex8vLybGdpJCkzM1N79+6Vn5+f/Pz8lJycrAEDBigwMFAZGRl6+umn1bhxY8XGxkqSWrRood69e2vkyJGaP3++CgoKNHr0aA0aNIhPYgEAAEkOPrOza9cutWnTRm3atJEkJSYmqk2bNpo8ebKqVaum/fv36w9/+IOaNm2qESNGqF27dvrqq69ktVptcyxZskTNmzdXjx491KdPH9111116/fXXHfWUAACAk3HomZ2YmBgZhlFm/+eff37NOfz8/LR06dKKLAsAAJhIlVqzAwAAcKMIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNQIOwAAwNRcHV0AgMrT7s+LHV0CnMjulx51dAmAQ3BmBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmBphBwAAmJpDw87mzZvVr18/BQcHy2KxaMWKFba+goICTZw4Ua1atVKNGjUUHBysRx99VCdOnLCbIywsTBaLxW574YUXbvEzAQAAzsqhYefChQuKiIjQvHnzSvRdvHhRe/bs0aRJk7Rnzx59/PHHSk9P1x/+8IcSY6dNm6asrCzbNmbMmFtRPgAAqAIc+kWgcXFxiouLK7XP19dX69evt2v7+9//rg4dOujYsWNq0KCBrd3b21uBgYGVWisAAKiaqtSanXPnzslisahmzZp27S+88IJq166tNm3a6KWXXlJhYaFjCgQAAE7HoWd2bsSlS5c0ceJEDR48WD4+Prb2sWPHqm3btvLz89O2bduUlJSkrKwszZo1q8y58vPzlZ+fb9vPzc2t1NoBAIDjVImwU1BQoAcffFCGYei1116z60tMTLT93Lp1a7m5uelPf/qTUlJSZLVaS50vJSVFycnJlVozAABwDk5/GetK0Pnhhx+0fv16u7M6pYmMjFRhYaGOHj1a5pikpCSdO3fOth0/fryCqwYAAM7Cqc/sXAk6hw8f1saNG1W7du1rPmbv3r1ycXFRQEBAmWOsVmuZZ30AAIC5ODTs5OXl6ciRI7b9zMxM7d27V35+fgoKCtLAgQO1Z88erV69WkVFRcrOzpYk+fn5yc3NTWlpadqxY4e6desmb29vpaWlafz48XrkkUdUq1YtRz0tAADgRBwadnbt2qVu3brZ9q+svxkyZIimTp2qTz75RJJ0xx132D1u48aNiomJkdVq1fvvv6+pU6cqPz9fDRs21Pjx4+3W8QAAgN83h4admJgYGYZRZv/V+iSpbdu22r59e0WXBQAATMTpFygDAADcDMIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwNcIOAAAwtXKFne7duysnJ6dEe25urrp3736zNQEAAFSYcoWdTZs26fLlyyXaL126pK+++uqmiwIAAKgorjcyeP/+/bafDx48qOzsbNt+UVGR1q5dq3r16lVcdQAAADfphsLOHXfcIYvFIovFUurlKg8PD82dO7fCigMAALhZNxR2MjMzZRiGGjVqpK+//lr+/v62Pjc3NwUEBKhatWoVXiQAAEB53VDYCQ0NlSQVFxdXSjEAAAAV7YbCzq8dPnxYGzdu1KlTp0qEn8mTJ990YQAAABWhXGHnjTfe0BNPPKE6deooMDBQFovF1mexWAg7AADAaZQr7Dz//POaPn26Jk6cWNH1AAAAVKhy3Wfn7NmzeuCBByq6FgAAgApXrrDzwAMPaN26dRVdCwAAQIUr12Wsxo0ba9KkSdq+fbtatWql6tWr2/WPHTu2QooDAAC4WeUKO6+//rq8vLyUmpqq1NRUuz6LxULYAQAATqNcYSczM7Oi6wAAAKgU5VqzAwAAUFWU68zO8OHDr9r/9ttvl6sYAACAilausHP27Fm7/YKCAh04cEA5OTmlfkEoAACAo5Qr7CxfvrxEW3FxsZ544gmFh4ffdFEAAAAVpcLW7Li4uCgxMVGzZ8+uqCkBAABuWoUuUM7IyFBhYWFFTgkAAHBTynUZKzEx0W7fMAxlZWXp008/1ZAhQyqkMAAAgIpQrjM7//rXv+y2/fv3S5JmzpypOXPmXPc8mzdvVr9+/RQcHCyLxaIVK1bY9RuGocmTJysoKEgeHh7q2bOnDh8+bDfmp59+Unx8vHx8fFSzZk2NGDFCeXl55XlaAADAhMp1Zmfjxo0VcvALFy4oIiJCw4cP1/3331+if8aMGfrb3/6mRYsWqWHDhpo0aZJiY2N18OBBubu7S5Li4+OVlZWl9evXq6CgQMOGDdOoUaO0dOnSCqkRAABUbeUKO1ecPn1a6enpkqRmzZrJ39//hh4fFxenuLi4UvsMw9CcOXP07LPP6t5775UkLV68WHXr1tWKFSs0aNAgHTp0SGvXrtXOnTt15513SpLmzp2rPn366OWXX1ZwcPBNPDsAAGAG5bqMdeHCBQ0fPlxBQUHq2rWrunbtquDgYI0YMUIXL16skMIyMzOVnZ2tnj172tp8fX0VGRmptLQ0SVJaWppq1qxpCzqS1LNnT7m4uGjHjh1lzp2fn6/c3Fy7DQAAmFO5wk5iYqJSU1O1atUq5eTkKCcnRytXrlRqaqqeeuqpCiksOztbklS3bl279rp169r6srOzFRAQYNfv6uoqPz8/25jSpKSkyNfX17aFhIRUSM0AAMD5lCvsfPTRR3rrrbcUFxcnHx8f+fj4qE+fPnrjjTf04YcfVnSNFS4pKUnnzp2zbcePH3d0SQAAoJKUK+xcvHixxBkXSQoICKiwy1iBgYGSpJMnT9q1nzx50tYXGBioU6dO2fUXFhbqp59+so0pjdVqtYW0KxsAADCncoWdqKgoTZkyRZcuXbK1/fzzz0pOTlZUVFSFFNawYUMFBgZqw4YNtrbc3Fzt2LHDdoyoqCjl5ORo9+7dtjFffvmliouLFRkZWSF1AACAqq1cn8aaM2eOevfurfr16ysiIkKStG/fPlmtVq1bt+6658nLy9ORI0ds+5mZmdq7d6/8/PzUoEEDjRs3Ts8//7yaNGli++h5cHCw+vfvL0lq0aKFevfurZEjR2r+/PkqKCjQ6NGjNWjQID6JBQAAJJUz7LRq1UqHDx/WkiVL9N1330mSBg8erPj4eHl4eFz3PLt27VK3bt1s+1fuzDxkyBAtXLhQTz/9tC5cuKBRo0YpJydHd911l9auXWu7x44kLVmyRKNHj1aPHj3k4uKiAQMG6G9/+1t5nhYAADChcoWdlJQU1a1bVyNHjrRrf/vtt3X69GlNnDjxuuaJiYmRYRhl9lssFk2bNk3Tpk0rc4yfnx83EAQAAGUq15qdf/zjH2revHmJ9ttuu03z58+/6aIAAAAqSrnCTnZ2toKCgkq0+/v7Kysr66aLAgAAqCjlCjshISHaunVrifatW7eyMBgAADiVcq3ZGTlypMaNG6eCggJ1795dkrRhwwY9/fTTFXYHZQAAgIpQrrDz5z//WWfOnNH//M//6PLly5Ikd3d3TZw4UUlJSRVaIAAAwM0oV9ixWCx68cUXNWnSJB06dEgeHh5q0qSJrFZrRdcHAABwU8oVdq7w8vJS+/btK6oWAACACleuBcoAAABVBWEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYGmEHAACYmtOHnbCwMFkslhJbQkKCJCkmJqZE3+OPP+7gqgEAgLNwdXQB17Jz504VFRXZ9g8cOKC7775bDzzwgK1t5MiRmjZtmm3f09PzltYIAACcl9OHHX9/f7v9F154QeHh4YqOjra1eXp6KjAw8FaXBgAAqgCnv4z1a5cvX9a7776r4cOHy2Kx2NqXLFmiOnXq6Pbbb1dSUpIuXrx41Xny8/OVm5trtwEAAHNy+jM7v7ZixQrl5ORo6NChtraHH35YoaGhCg4O1v79+zVx4kSlp6fr448/LnOelJQUJScn34KKAQCAo1WpsPPWW28pLi5OwcHBtrZRo0bZfm7VqpWCgoLUo0cPZWRkKDw8vNR5kpKSlJiYaNvPzc1VSEhI5RUOAAAcpsqEnR9++EFffPHFVc/YSFJkZKQk6ciRI2WGHavVKqvVWuE1AgAA51Nl1uwsWLBAAQEB6tu371XH7d27V5IUFBR0C6oCAADOrkqc2SkuLtaCBQs0ZMgQubr+f8kZGRlaunSp+vTpo9q1a2v//v0aP368unbtqtatWzuwYgAA4CyqRNj54osvdOzYMQ0fPtyu3c3NTV988YXmzJmjCxcuKCQkRAMGDNCzzz7roEoBAICzqRJhp1evXjIMo0R7SEiIUlNTHVARAACoKqrMmh0AAIDyIOwAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTI+wAAABTc+qwM3XqVFksFrutefPmtv5Lly4pISFBtWvXlpeXlwYMGKCTJ086sGIAAOBsnDrsSNJtt92mrKws27ZlyxZb3/jx47Vq1Sp98MEHSk1N1YkTJ3T//fc7sFoAAOBsXB1dwLW4uroqMDCwRPu5c+f01ltvaenSperevbskacGCBWrRooW2b9+ujh073upSAQCAE3L6MzuHDx9WcHCwGjVqpPj4eB07dkyStHv3bhUUFKhnz562sc2bN1eDBg2UlpZ21Tnz8/OVm5trtwEAAHNy6rATGRmphQsXau3atXrttdeUmZmpLl266Pz588rOzpabm5tq1qxp95i6desqOzv7qvOmpKTI19fXtoWEhFTiswAAAI7k1Jex4uLibD+3bt1akZGRCg0N1T//+U95eHiUe96kpCQlJiba9nNzcwk8AACYlFOf2fmtmjVrqmnTpjpy5IgCAwN1+fJl5eTk2I05efJkqWt8fs1qtcrHx8duAwAA5lSlwk5eXp4yMjIUFBSkdu3aqXr16tqwYYOtPz09XceOHVNUVJQDqwQAAM7EqS9jTZgwQf369VNoaKhOnDihKVOmqFq1aho8eLB8fX01YsQIJSYmys/PTz4+PhozZoyioqL4JBYAALBx6rDzn//8R4MHD9aZM2fk7++vu+66S9u3b5e/v78kafbs2XJxcdGAAQOUn5+v2NhYvfrqqw6uGgAAOBOnDjvvv//+Vfvd3d01b948zZs37xZVBAAAqpoqtWYHAADgRhF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqRF2AACAqTl12ElJSVH79u3l7e2tgIAA9e/fX+np6XZjYmJiZLFY7LbHH3/cQRUDAABn49RhJzU1VQkJCdq+fbvWr1+vgoIC9erVSxcuXLAbN3LkSGVlZdm2GTNmOKhiAADgbFwdXcDVrF271m5/4cKFCggI0O7du9W1a1dbu6enpwIDA291eQAAoApw6jM7v3Xu3DlJkp+fn137kiVLVKdOHd1+++1KSkrSxYsXHVEeAABwQk59ZufXiouLNW7cOHXu3Fm33367rf3hhx9WaGiogoODtX//fk2cOFHp6en6+OOPy5wrPz9f+fn5tv3c3NxKrR0AADhOlQk7CQkJOnDggLZs2WLXPmrUKNvPrVq1UlBQkHr06KGMjAyFh4eXOldKSoqSk5MrtV4AAOAcqsRlrNGjR2v16tXauHGj6tevf9WxkZGRkqQjR46UOSYpKUnnzp2zbcePH6/QegEAgPNw6jM7hmFozJgxWr58uTZt2qSGDRte8zF79+6VJAUFBZU5xmq1ymq1VlSZAADAiTl12ElISNDSpUu1cuVKeXt7Kzs7W5Lk6+srDw8PZWRkaOnSperTp49q166t/fv3a/z48eratatat27t4OoBAIAzcOqw89prr0n65caBv7ZgwQINHTpUbm5u+uKLLzRnzhxduHBBISEhGjBggJ599lkHVAsAAJyRU4cdwzCu2h8SEqLU1NRbVA0AAKiKqsQCZQAAgPIi7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMj7AAAAFMzTdiZN2+ewsLC5O7ursjISH399deOLgkAADgBU4SdZcuWKTExUVOmTNGePXsUERGh2NhYnTp1ytGlAQAABzNF2Jk1a5ZGjhypYcOGqWXLlpo/f748PT319ttvO7o0AADgYFU+7Fy+fFm7d+9Wz549bW0uLi7q2bOn0tLSHFgZAABwBq6OLuBm/fjjjyoqKlLdunXt2uvWravvvvuu1Mfk5+crPz/ftn/u3DlJUm5ubrnrKMr/udyPhfnczHupIvG+xK85w/uS9yR+7Wbfk1cebxjGVcdV+bBTHikpKUpOTi7RHhIS4oBqYEa+cx93dAlACbwv4Wwq6j15/vx5+fr6ltlf5cNOnTp1VK1aNZ08edKu/eTJkwoMDCz1MUlJSUpMTLTtFxcX66efflLt2rVlsVgqtV4zy83NVUhIiI4fPy4fHx9HlwNI4n0J58N7suIYhqHz588rODj4quOqfNhxc3NTu3bttGHDBvXv31/SL+Flw4YNGj16dKmPsVqtslqtdm01a9as5Ep/P3x8fPgLDKfD+xLOhvdkxbjaGZ0rqnzYkaTExEQNGTJEd955pzp06KA5c+bowoULGjZsmKNLAwAADmaKsPPQQw/p9OnTmjx5srKzs3XHHXdo7dq1JRYtAwCA3x9ThB1JGj16dJmXrXBrWK1WTZkypcQlQsCReF/C2fCevPUsxrU+rwUAAFCFVfmbCgIAAFwNYQcAAJgaYQcAAJgaYQc3bdOmTbJYLMrJybnquLCwMM2ZM+eW1ATcqKlTp+qOO+5wdBlAufE7tmyEHdy0Tp06KSsry3Zjp4ULF5Z6k8adO3dq1KhRt7g6oCSLxaIVK1bYtU2YMEEbNmxwTEH4XYqJidG4ceMcXcbvgmk+eg7HcXNzK/OrOX7N39//FlQDlI+Xl5e8vLwcXQZgxzAMFRUVydWVf65vBmd2fidiYmJs9yLy9fVVnTp1NGnSJNs3xZ49e1aPPvqoatWqJU9PT8XFxenw4cO2x//www/q16+fatWqpRo1aui2227TZ599Jsn+MtamTZs0bNgwnTt3ThaLRRaLRVOnTpVkf4r14Ycf1kMPPWRXY0FBgerUqaPFixdL+uVrP1JSUtSwYUN5eHgoIiJCH374YSW/UqhMMTExGjt2rJ5++mn5+fkpMDDQ9v6QpJycHD322GPy9/eXj4+Punfvrn379tnN8fzzzysgIEDe3t567LHH9Mwzz9hdftq5c6fuvvtu1alTR76+voqOjtaePXts/WFhYZKk++67TxaLxbb/68tY69atk7u7e4lLs08++aS6d+9u29+yZYu6dOkiDw8PhYSEaOzYsbpw4cJNv05wvJt9rw4dOtT2FUZXjBs3TjExMbb+1NRUvfLKK7bflUePHrX9Pl2zZo3atWsnq9WqLVu2KCMjQ/fee6/q1q0rLy8vtW/fXl988cUteCXMgbDzO7Jo0SK5urrq66+/1iuvvKJZs2bpzTfflPTLX7xdu3bpk08+UVpamgzDUJ8+fVRQUCBJSkhIUH5+vjZv3qxvvvlGL774Yqn/C+7UqZPmzJkjHx8fZWVlKSsrSxMmTCgxLj4+XqtWrVJeXp6t7fPPP9fFixd13333Sfrl2+kXL16s+fPn69tvv9X48eP1yCOPKDU1tTJeHtwiixYtUo0aNbRjxw7NmDFD06ZN0/r16yVJDzzwgE6dOqU1a9Zo9+7datu2rXr06KGffvpJkrRkyRJNnz5dL774onbv3q0GDRrotddes5v//PnzGjJkiLZs2aLt27erSZMm6tOnj86fPy/plzAkSQsWLFBWVpZt/9d69OihmjVr6qOPPrK1FRUVadmyZYqPj5ckZWRkqHfv3howYID279+vZcuWacuWLdzc1ERu5r16La+88oqioqI0cuRI2+/KkJAQW/8zzzyjF154QYcOHVLr1q2Vl5enPn36aMOGDfrXv/6l3r17q1+/fjp27FilPHfTMfC7EB0dbbRo0cIoLi62tU2cONFo0aKF8f333xuSjK1bt9r6fvzxR8PDw8P45z//aRiGYbRq1cqYOnVqqXNv3LjRkGScPXvWMAzDWLBggeHr61tiXGhoqDF79mzDMAyjoKDAqFOnjrF48WJb/+DBg42HHnrIMAzDuHTpkuHp6Wls27bNbo4RI0YYgwcPvuHnD+cQHR1t3HXXXXZt7du3NyZOnGh89dVXho+Pj3Hp0iW7/vDwcOMf//iHYRiGERkZaSQkJNj1d+7c2YiIiCjzmEVFRYa3t7exatUqW5skY/ny5XbjpkyZYjfPk08+aXTv3t22//nnnxtWq9X2Ph8xYoQxatQouzm++uorw8XFxfj555/LrAdVw82+V4cMGWLce++9dv1PPvmkER0dbXeMJ5980m7Mld+nK1asuGaNt912mzF37lzb/q9/x8IeZ3Z+Rzp27CiLxWLbj4qK0uHDh3Xw4EG5uroqMjLS1le7dm01a9ZMhw4dkiSNHTtWzz//vDp37qwpU6Zo//79N1WLq6urHnzwQS1ZskSSdOHCBa1cudL2v+YjR47o4sWLuvvuu21rKby8vLR48WJlZGTc1LHhWK1bt7bbDwoK0qlTp7Rv3z7l5eWpdu3adn/mmZmZtj/z9PR0dejQwe7xv90/efKkRo4cqSZNmsjX11c+Pj7Ky8u74f8Bx8fHa9OmTTpx4oSkX84q9e3b17b4ft++fVq4cKFdrbGxsSouLlZmZuYNHQvO6WbeqzfrzjvvtNvPy8vThAkT1KJFC9WsWVNeXl46dOgQZ3auEyuecF0ee+wxxcbG6tNPP9W6deuUkpKimTNnasyYMeWeMz4+XtHR0Tp16pTWr18vDw8P9e7dW5Jsl7c+/fRT1atXz+5xfJ9M1Va9enW7fYvFouLiYuXl5SkoKEibNm0q8ZjSPt1XliFDhujMmTN65ZVXFBoaKqvVqqioKF2+fPmG6mzfvr3Cw8P1/vvv64knntDy5cu1cOFCW39eXp7+9Kc/aezYsSUe26BBgxs6FpzTzbxXXVxcbGsir7iyLOB61KhRw25/woQJWr9+vV5++WU1btxYHh4eGjhw4A2/r3+vCDu/Izt27LDbv7KeoWXLliosLNSOHTvUqVMnSdKZM2eUnp6uli1b2saHhITo8ccf1+OPP66kpCS98cYbpYYdNzc3FRUVXbOeTp06KSQkRMuWLdOaNWv0wAMP2H65tGzZUlarVceOHVN0dPTNPG1UEW3btlV2drZcXV1ti4Z/q1mzZtq5c6ceffRRW9tv19xs3bpVr776qvr06SNJOn78uH788Ue7MdWrV7+u92h8fLyWLFmi+vXry8XFRX379rWr9+DBg2rcuPH1PkWYxPW8V/39/XXgwAG7tr1799oFqOv9XSn98r4eOnSobU1jXl6ejh49Wq76f4+4jPU7cuzYMSUmJio9PV3vvfee5s6dqyeffFJNmjTRvffeq5EjR2rLli3at2+fHnnkEdWrV0/33nuvpF8+RfD5558rMzNTe/bs0caNG9WiRYtSjxMWFqa8vDxt2LBBP/74oy5evFhmTQ8//LDmz5+v9evX2y5hSZK3t7cmTJig8ePHa9GiRcrIyNCePXs0d+5cLVq0qGJfGDiFnj17KioqSv3799e6det09OhRbdu2TX/5y1+0a9cuSdKYMWP01ltvadGiRTp8+LCef/557d+/3+7ybJMmTfTOO+/o0KFD2rFjh+Lj4+Xh4WF3rLCwMG3YsEHZ2dk6e/ZsmTXFx8drz549mj59ugYOHGh3VnHixInatm2bRo8erb179+rw4cNauXIlC5R/B67nvdq9e3ft2rVLixcv1uHDhzVlypQS4ScsLEw7duzQ0aNH9eOPP6q4uLjMYzZp0kQff/yx9u7dq3379unhhx++6njYI+z8jjz66KP6+eef1aFDByUkJOjJJ5+03eRvwYIFateune655x5FRUXJMAx99tlntv+FFBUVKSEhQS1atFDv3r3VtGlTvfrqq6Uep1OnTnr88cf10EMPyd/fXzNmzCizpvj4eB08eFD16tVT586d7fqee+45TZo0SSkpKbbjfvrpp2rYsGEFvSJwJhaLRZ999pm6du2qYcOGqWnTpho0aJB++OEH1a1bV9Iv75ekpCRNmDBBbdu2VWZmpoYOHSp3d3fbPG+99ZbOnj2rtm3b6o9//KPGjh2rgIAAu2PNnDlT69evV0hIiNq0aVNmTY0bN1aHDh20f/9+uzAu/bKeIzU1Vd9//726dOmiNm3aaPLkyQoODq7AVwXO6Hreq7GxsZo0aZKefvpptW/fXufPn7c7Iyn9cmmqWrVqatmypfz9/a+6/mbWrFmqVauWOnXqpH79+ik2NlZt27at1OdpJhbjtxcVYUoxMTG64447uJU4TOfuu+9WYGCg3nnnHUeXAsBJsWYHQJVx8eJFzZ8/X7GxsapWrZree+89ffHFF7Z7nwBAaQg7AKqMK5cPpk+frkuXLqlZs2b66KOP1LNnT0eXBsCJcRkLAACYGguUAQCAqRF2AACAqRF2AACAqRF2AACAqRF2AJhKWFgY95MCYIewA6BKWrhwYalfELpz507bncEdadOmTbJYLMrJyXF0KcDvHvfZAWAq/v7+ji4BgJPhzA6ASvPhhx+qVatW8vDwUO3atdWzZ09duHBBkvTmm2+qRYsWcnd3V/Pmze2+a+3o0aOyWCz6+OOP1a1bN3l6eioiIkJpaWmSfjlrMmzYMJ07d04Wi0UWi0VTp06VVPIylsVi0T/+8Q/dc8898vT0VIsWLZSWlqYjR44oJiZGNWrUUKdOnZSRkWFX+8qVK9W2bVu5u7urUaNGSk5OVmFhod28b775pu677z55enqqSZMm+uSTT2z1d+vWTZJUq1YtWSwWDR06tKJfXgDXywCASnDixAnD1dXVmDVrlpGZmWns37/fmDdvnnH+/Hnj3XffNYKCgoyPPvrI+Pe//2189NFHhp+fn7Fw4ULDMAwjMzPTkGQ0b97cWL16tZGenm4MHDjQCA0NNQoKCoz8/Hxjzpw5ho+Pj5GVlWVkZWUZ58+fNwzDMEJDQ43Zs2fb6pBk1KtXz1i2bJmRnp5u9O/f3wgLCzO6d+9urF271jh48KDRsWNHo3fv3rbHbN682fDx8TEWLlxoZGRkGOvWrTPCwsKMqVOn2s1bv359Y+nSpcbhw4eNsWPHGl5eXsaZM2eMwsJC46OPPjIkGenp6UZWVpaRk5Nza154ACUQdgBUit27dxuSjKNHj5boCw8PN5YuXWrX9txzzxlRUVGGYfx/2HnzzTdt/d9++60hyTh06JBhGIaxYMECw9fXt8TcpYWdZ5991raflpZmSDLeeustW9t7771nuLu72/Z79Ohh/PWvf7Wb95133jGCgoLKnDcvL8+QZKxZs8YwDMPYuHGjIck4e/ZsiRoB3Fqs2QFQKSIiItSjRw+1atVKsbGx6tWrlwYOHCg3NzdlZGRoxIgRGjlypG18YWGhfH197eZo3bq17eegoCBJ0qlTp9S8efMbquXX89StW1eS1KpVK7u2S5cuKTc3Vz4+Ptq3b5+2bt2q6dOn28YUFRXp0qVLunjxojw9PUvMW6NGDfn4+OjUqVM3VBuAykfYAVApqlWrpvXr12vbtm1at26d5s6dq7/85S9atWqVJOmNN95QZGRkicf8WvXq1W0/WywWSVJxcfEN11LaPFebOy8vT8nJybr//vtLzOXu7l7qvFfmKU99ACoXYQdApbFYLOrcubM6d+6syZMnKzQ0VFu3blVwcLD+/e9/Kz4+vtxzu7m5qaioqAKr/X9t27ZVenq6GjduXO453NzcJKnSagRw/Qg7ACrFjh07tGHDBvXq1UsBAQHasWOHTp8+rRYtWig5OVljx46Vr6+vevfurfz8fO3atUtnz55VYmLidc0fFhamvLw8bdiwQREREfL09LRdXrpZkydP1j333KMGDRpo4MCBcnFx0b59+3TgwAE9//zz1zVHaGioLBaLVq9erT59+sjDw0NeXl4VUh+AG8NHzwFUCh8fH23evFl9+vRR06ZN9eyzz2rmzJmKi4vTY489pjfffFMLFixQq1atFB0drYULF6phw4bXPX+nTp30+OOP66GHHpK/v79mzJhRYbXHxsZq9erVWrdundq3b6+OHTtq9uzZCg0Nve456tWrp+TkZD3zzDOqW7euRo8eXWH1AbgxFsMwDEcXAQAAUFk4swMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEyNsAMAAEzt/wDRAklkJXc8/gAAAABJRU5ErkJggg==",
|
| 152 |
+
"text/plain": [
|
| 153 |
+
"<Figure size 640x480 with 1 Axes>"
|
| 154 |
+
]
|
| 155 |
+
},
|
| 156 |
+
"metadata": {},
|
| 157 |
+
"output_type": "display_data"
|
| 158 |
+
}
|
| 159 |
+
],
|
| 160 |
+
"source": [
|
| 161 |
+
"# Data Visualization\n",
|
| 162 |
+
"sns.countplot(x=df[\"sentiment\"])\n",
|
| 163 |
+
"plt.title(\"Sentiment Distribution\")\n",
|
| 164 |
+
"plt.show()"
|
| 165 |
+
]
|
| 166 |
+
},
|
| 167 |
+
{
|
| 168 |
+
"cell_type": "markdown",
|
| 169 |
+
"metadata": {},
|
| 170 |
+
"source": [
|
| 171 |
+
"<h1>Text Preprocessing and Feature Engineering</h1>\n",
|
| 172 |
+
"<h5>In this process, we will transform the text to its most basic format, without numbers, stopwords and punctuation that would be unecessary and unrelated to the data.</h5>"
|
| 173 |
+
]
|
| 174 |
+
},
|
| 175 |
+
{
|
| 176 |
+
"cell_type": "code",
|
| 177 |
+
"execution_count": 503,
|
| 178 |
+
"metadata": {},
|
| 179 |
+
"outputs": [],
|
| 180 |
+
"source": [
|
| 181 |
+
"def clean_text(text):\n",
|
| 182 |
+
" text = text.lower() \n",
|
| 183 |
+
" text = re.sub(r'[^a-zA-Z\\s]', '', text) \n",
|
| 184 |
+
" text = ' '.join([word for word in text.split() if word not in stop_words]) \n",
|
| 185 |
+
" return text\n"
|
| 186 |
+
]
|
| 187 |
+
},
|
| 188 |
+
{
|
| 189 |
+
"cell_type": "code",
|
| 190 |
+
"execution_count": 504,
|
| 191 |
+
"metadata": {},
|
| 192 |
+
"outputs": [],
|
| 193 |
+
"source": [
|
| 194 |
+
"df[\"Cleaned_Text\"] = df[\"text\"].apply(clean_text)"
|
| 195 |
+
]
|
| 196 |
+
},
|
| 197 |
+
{
|
| 198 |
+
"cell_type": "markdown",
|
| 199 |
+
"metadata": {},
|
| 200 |
+
"source": [
|
| 201 |
+
"We will create a new column that will contain the preprocessed text and separate it from the original"
|
| 202 |
+
]
|
| 203 |
+
},
|
| 204 |
+
{
|
| 205 |
+
"cell_type": "code",
|
| 206 |
+
"execution_count": 505,
|
| 207 |
+
"metadata": {},
|
| 208 |
+
"outputs": [],
|
| 209 |
+
"source": [
|
| 210 |
+
"\n",
|
| 211 |
+
"sentiment_mapping = {\"neutral\": 0, \"positive\": 1, \"negative\": 2}\n",
|
| 212 |
+
"df[\"sentiment\"] = df[\"sentiment\"].map(sentiment_mapping)"
|
| 213 |
+
]
|
| 214 |
+
},
|
| 215 |
+
{
|
| 216 |
+
"cell_type": "markdown",
|
| 217 |
+
"metadata": {},
|
| 218 |
+
"source": [
|
| 219 |
+
"<h1>Training the Model</h1>\n",
|
| 220 |
+
"<h5>After cleaning the data, and processing the text, it is time to train the model in order to help it classify which statements are \"Positive\", \"Negative\" or \"Neutral\". For this, we will use Logistic Regression that assumes the frequency of words to classify.</h5>"
|
| 221 |
+
]
|
| 222 |
+
},
|
| 223 |
+
{
|
| 224 |
+
"cell_type": "code",
|
| 225 |
+
"execution_count": 506,
|
| 226 |
+
"metadata": {},
|
| 227 |
+
"outputs": [],
|
| 228 |
+
"source": [
|
| 229 |
+
"X_train, X_test, y_train, y_test = train_test_split(df[\"Cleaned_Text\"], df[\"sentiment\"], test_size=0.1, random_state=42)\n"
|
| 230 |
+
]
|
| 231 |
+
},
|
| 232 |
+
{
|
| 233 |
+
"cell_type": "code",
|
| 234 |
+
"execution_count": 507,
|
| 235 |
+
"metadata": {},
|
| 236 |
+
"outputs": [],
|
| 237 |
+
"source": [
|
| 238 |
+
"vectorizer = TfidfVectorizer(max_features=5000)\n",
|
| 239 |
+
"X_train_tfidf = vectorizer.fit_transform(X_train)\n",
|
| 240 |
+
"X_test_tfidf = vectorizer.transform(X_test)"
|
| 241 |
+
]
|
| 242 |
+
},
|
| 243 |
+
{
|
| 244 |
+
"cell_type": "markdown",
|
| 245 |
+
"metadata": {},
|
| 246 |
+
"source": [
|
| 247 |
+
"TF-IDF (Term Frequency-Inverse Document Frequency) determines how important is the word based on how many times it appeared in the text, we will use this in order to detect the words that belong to the \"spam\" and \"ham\" classes"
|
| 248 |
+
]
|
| 249 |
+
},
|
| 250 |
+
{
|
| 251 |
+
"cell_type": "code",
|
| 252 |
+
"execution_count": 508,
|
| 253 |
+
"metadata": {},
|
| 254 |
+
"outputs": [
|
| 255 |
+
{
|
| 256 |
+
"data": {
|
| 257 |
+
"text/html": [
|
| 258 |
+
"<style>#sk-container-id-21 {\n",
|
| 259 |
+
" /* Definition of color scheme common for light and dark mode */\n",
|
| 260 |
+
" --sklearn-color-text: black;\n",
|
| 261 |
+
" --sklearn-color-line: gray;\n",
|
| 262 |
+
" /* Definition of color scheme for unfitted estimators */\n",
|
| 263 |
+
" --sklearn-color-unfitted-level-0: #fff5e6;\n",
|
| 264 |
+
" --sklearn-color-unfitted-level-1: #f6e4d2;\n",
|
| 265 |
+
" --sklearn-color-unfitted-level-2: #ffe0b3;\n",
|
| 266 |
+
" --sklearn-color-unfitted-level-3: chocolate;\n",
|
| 267 |
+
" /* Definition of color scheme for fitted estimators */\n",
|
| 268 |
+
" --sklearn-color-fitted-level-0: #f0f8ff;\n",
|
| 269 |
+
" --sklearn-color-fitted-level-1: #d4ebff;\n",
|
| 270 |
+
" --sklearn-color-fitted-level-2: #b3dbfd;\n",
|
| 271 |
+
" --sklearn-color-fitted-level-3: cornflowerblue;\n",
|
| 272 |
+
"\n",
|
| 273 |
+
" /* Specific color for light theme */\n",
|
| 274 |
+
" --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
|
| 275 |
+
" --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, white)));\n",
|
| 276 |
+
" --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, black)));\n",
|
| 277 |
+
" --sklearn-color-icon: #696969;\n",
|
| 278 |
+
"\n",
|
| 279 |
+
" @media (prefers-color-scheme: dark) {\n",
|
| 280 |
+
" /* Redefinition of color scheme for dark theme */\n",
|
| 281 |
+
" --sklearn-color-text-on-default-background: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
|
| 282 |
+
" --sklearn-color-background: var(--sg-background-color, var(--theme-background, var(--jp-layout-color0, #111)));\n",
|
| 283 |
+
" --sklearn-color-border-box: var(--sg-text-color, var(--theme-code-foreground, var(--jp-content-font-color1, white)));\n",
|
| 284 |
+
" --sklearn-color-icon: #878787;\n",
|
| 285 |
+
" }\n",
|
| 286 |
+
"}\n",
|
| 287 |
+
"\n",
|
| 288 |
+
"#sk-container-id-21 {\n",
|
| 289 |
+
" color: var(--sklearn-color-text);\n",
|
| 290 |
+
"}\n",
|
| 291 |
+
"\n",
|
| 292 |
+
"#sk-container-id-21 pre {\n",
|
| 293 |
+
" padding: 0;\n",
|
| 294 |
+
"}\n",
|
| 295 |
+
"\n",
|
| 296 |
+
"#sk-container-id-21 input.sk-hidden--visually {\n",
|
| 297 |
+
" border: 0;\n",
|
| 298 |
+
" clip: rect(1px 1px 1px 1px);\n",
|
| 299 |
+
" clip: rect(1px, 1px, 1px, 1px);\n",
|
| 300 |
+
" height: 1px;\n",
|
| 301 |
+
" margin: -1px;\n",
|
| 302 |
+
" overflow: hidden;\n",
|
| 303 |
+
" padding: 0;\n",
|
| 304 |
+
" position: absolute;\n",
|
| 305 |
+
" width: 1px;\n",
|
| 306 |
+
"}\n",
|
| 307 |
+
"\n",
|
| 308 |
+
"#sk-container-id-21 div.sk-dashed-wrapped {\n",
|
| 309 |
+
" border: 1px dashed var(--sklearn-color-line);\n",
|
| 310 |
+
" margin: 0 0.4em 0.5em 0.4em;\n",
|
| 311 |
+
" box-sizing: border-box;\n",
|
| 312 |
+
" padding-bottom: 0.4em;\n",
|
| 313 |
+
" background-color: var(--sklearn-color-background);\n",
|
| 314 |
+
"}\n",
|
| 315 |
+
"\n",
|
| 316 |
+
"#sk-container-id-21 div.sk-container {\n",
|
| 317 |
+
" /* jupyter's `normalize.less` sets `[hidden] { display: none; }`\n",
|
| 318 |
+
" but bootstrap.min.css set `[hidden] { display: none !important; }`\n",
|
| 319 |
+
" so we also need the `!important` here to be able to override the\n",
|
| 320 |
+
" default hidden behavior on the sphinx rendered scikit-learn.org.\n",
|
| 321 |
+
" See: https://github.com/scikit-learn/scikit-learn/issues/21755 */\n",
|
| 322 |
+
" display: inline-block !important;\n",
|
| 323 |
+
" position: relative;\n",
|
| 324 |
+
"}\n",
|
| 325 |
+
"\n",
|
| 326 |
+
"#sk-container-id-21 div.sk-text-repr-fallback {\n",
|
| 327 |
+
" display: none;\n",
|
| 328 |
+
"}\n",
|
| 329 |
+
"\n",
|
| 330 |
+
"div.sk-parallel-item,\n",
|
| 331 |
+
"div.sk-serial,\n",
|
| 332 |
+
"div.sk-item {\n",
|
| 333 |
+
" /* draw centered vertical line to link estimators */\n",
|
| 334 |
+
" background-image: linear-gradient(var(--sklearn-color-text-on-default-background), var(--sklearn-color-text-on-default-background));\n",
|
| 335 |
+
" background-size: 2px 100%;\n",
|
| 336 |
+
" background-repeat: no-repeat;\n",
|
| 337 |
+
" background-position: center center;\n",
|
| 338 |
+
"}\n",
|
| 339 |
+
"\n",
|
| 340 |
+
"/* Parallel-specific style estimator block */\n",
|
| 341 |
+
"\n",
|
| 342 |
+
"#sk-container-id-21 div.sk-parallel-item::after {\n",
|
| 343 |
+
" content: \"\";\n",
|
| 344 |
+
" width: 100%;\n",
|
| 345 |
+
" border-bottom: 2px solid var(--sklearn-color-text-on-default-background);\n",
|
| 346 |
+
" flex-grow: 1;\n",
|
| 347 |
+
"}\n",
|
| 348 |
+
"\n",
|
| 349 |
+
"#sk-container-id-21 div.sk-parallel {\n",
|
| 350 |
+
" display: flex;\n",
|
| 351 |
+
" align-items: stretch;\n",
|
| 352 |
+
" justify-content: center;\n",
|
| 353 |
+
" background-color: var(--sklearn-color-background);\n",
|
| 354 |
+
" position: relative;\n",
|
| 355 |
+
"}\n",
|
| 356 |
+
"\n",
|
| 357 |
+
"#sk-container-id-21 div.sk-parallel-item {\n",
|
| 358 |
+
" display: flex;\n",
|
| 359 |
+
" flex-direction: column;\n",
|
| 360 |
+
"}\n",
|
| 361 |
+
"\n",
|
| 362 |
+
"#sk-container-id-21 div.sk-parallel-item:first-child::after {\n",
|
| 363 |
+
" align-self: flex-end;\n",
|
| 364 |
+
" width: 50%;\n",
|
| 365 |
+
"}\n",
|
| 366 |
+
"\n",
|
| 367 |
+
"#sk-container-id-21 div.sk-parallel-item:last-child::after {\n",
|
| 368 |
+
" align-self: flex-start;\n",
|
| 369 |
+
" width: 50%;\n",
|
| 370 |
+
"}\n",
|
| 371 |
+
"\n",
|
| 372 |
+
"#sk-container-id-21 div.sk-parallel-item:only-child::after {\n",
|
| 373 |
+
" width: 0;\n",
|
| 374 |
+
"}\n",
|
| 375 |
+
"\n",
|
| 376 |
+
"/* Serial-specific style estimator block */\n",
|
| 377 |
+
"\n",
|
| 378 |
+
"#sk-container-id-21 div.sk-serial {\n",
|
| 379 |
+
" display: flex;\n",
|
| 380 |
+
" flex-direction: column;\n",
|
| 381 |
+
" align-items: center;\n",
|
| 382 |
+
" background-color: var(--sklearn-color-background);\n",
|
| 383 |
+
" padding-right: 1em;\n",
|
| 384 |
+
" padding-left: 1em;\n",
|
| 385 |
+
"}\n",
|
| 386 |
+
"\n",
|
| 387 |
+
"\n",
|
| 388 |
+
"/* Toggleable style: style used for estimator/Pipeline/ColumnTransformer box that is\n",
|
| 389 |
+
"clickable and can be expanded/collapsed.\n",
|
| 390 |
+
"- Pipeline and ColumnTransformer use this feature and define the default style\n",
|
| 391 |
+
"- Estimators will overwrite some part of the style using the `sk-estimator` class\n",
|
| 392 |
+
"*/\n",
|
| 393 |
+
"\n",
|
| 394 |
+
"/* Pipeline and ColumnTransformer style (default) */\n",
|
| 395 |
+
"\n",
|
| 396 |
+
"#sk-container-id-21 div.sk-toggleable {\n",
|
| 397 |
+
" /* Default theme specific background. It is overwritten whether we have a\n",
|
| 398 |
+
" specific estimator or a Pipeline/ColumnTransformer */\n",
|
| 399 |
+
" background-color: var(--sklearn-color-background);\n",
|
| 400 |
+
"}\n",
|
| 401 |
+
"\n",
|
| 402 |
+
"/* Toggleable label */\n",
|
| 403 |
+
"#sk-container-id-21 label.sk-toggleable__label {\n",
|
| 404 |
+
" cursor: pointer;\n",
|
| 405 |
+
" display: block;\n",
|
| 406 |
+
" width: 100%;\n",
|
| 407 |
+
" margin-bottom: 0;\n",
|
| 408 |
+
" padding: 0.5em;\n",
|
| 409 |
+
" box-sizing: border-box;\n",
|
| 410 |
+
" text-align: center;\n",
|
| 411 |
+
"}\n",
|
| 412 |
+
"\n",
|
| 413 |
+
"#sk-container-id-21 label.sk-toggleable__label-arrow:before {\n",
|
| 414 |
+
" /* Arrow on the left of the label */\n",
|
| 415 |
+
" content: \"▸\";\n",
|
| 416 |
+
" float: left;\n",
|
| 417 |
+
" margin-right: 0.25em;\n",
|
| 418 |
+
" color: var(--sklearn-color-icon);\n",
|
| 419 |
+
"}\n",
|
| 420 |
+
"\n",
|
| 421 |
+
"#sk-container-id-21 label.sk-toggleable__label-arrow:hover:before {\n",
|
| 422 |
+
" color: var(--sklearn-color-text);\n",
|
| 423 |
+
"}\n",
|
| 424 |
+
"\n",
|
| 425 |
+
"/* Toggleable content - dropdown */\n",
|
| 426 |
+
"\n",
|
| 427 |
+
"#sk-container-id-21 div.sk-toggleable__content {\n",
|
| 428 |
+
" max-height: 0;\n",
|
| 429 |
+
" max-width: 0;\n",
|
| 430 |
+
" overflow: hidden;\n",
|
| 431 |
+
" text-align: left;\n",
|
| 432 |
+
" /* unfitted */\n",
|
| 433 |
+
" background-color: var(--sklearn-color-unfitted-level-0);\n",
|
| 434 |
+
"}\n",
|
| 435 |
+
"\n",
|
| 436 |
+
"#sk-container-id-21 div.sk-toggleable__content.fitted {\n",
|
| 437 |
+
" /* fitted */\n",
|
| 438 |
+
" background-color: var(--sklearn-color-fitted-level-0);\n",
|
| 439 |
+
"}\n",
|
| 440 |
+
"\n",
|
| 441 |
+
"#sk-container-id-21 div.sk-toggleable__content pre {\n",
|
| 442 |
+
" margin: 0.2em;\n",
|
| 443 |
+
" border-radius: 0.25em;\n",
|
| 444 |
+
" color: var(--sklearn-color-text);\n",
|
| 445 |
+
" /* unfitted */\n",
|
| 446 |
+
" background-color: var(--sklearn-color-unfitted-level-0);\n",
|
| 447 |
+
"}\n",
|
| 448 |
+
"\n",
|
| 449 |
+
"#sk-container-id-21 div.sk-toggleable__content.fitted pre {\n",
|
| 450 |
+
" /* unfitted */\n",
|
| 451 |
+
" background-color: var(--sklearn-color-fitted-level-0);\n",
|
| 452 |
+
"}\n",
|
| 453 |
+
"\n",
|
| 454 |
+
"#sk-container-id-21 input.sk-toggleable__control:checked~div.sk-toggleable__content {\n",
|
| 455 |
+
" /* Expand drop-down */\n",
|
| 456 |
+
" max-height: 200px;\n",
|
| 457 |
+
" max-width: 100%;\n",
|
| 458 |
+
" overflow: auto;\n",
|
| 459 |
+
"}\n",
|
| 460 |
+
"\n",
|
| 461 |
+
"#sk-container-id-21 input.sk-toggleable__control:checked~label.sk-toggleable__label-arrow:before {\n",
|
| 462 |
+
" content: \"▾\";\n",
|
| 463 |
+
"}\n",
|
| 464 |
+
"\n",
|
| 465 |
+
"/* Pipeline/ColumnTransformer-specific style */\n",
|
| 466 |
+
"\n",
|
| 467 |
+
"#sk-container-id-21 div.sk-label input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
|
| 468 |
+
" color: var(--sklearn-color-text);\n",
|
| 469 |
+
" background-color: var(--sklearn-color-unfitted-level-2);\n",
|
| 470 |
+
"}\n",
|
| 471 |
+
"\n",
|
| 472 |
+
"#sk-container-id-21 div.sk-label.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
|
| 473 |
+
" background-color: var(--sklearn-color-fitted-level-2);\n",
|
| 474 |
+
"}\n",
|
| 475 |
+
"\n",
|
| 476 |
+
"/* Estimator-specific style */\n",
|
| 477 |
+
"\n",
|
| 478 |
+
"/* Colorize estimator box */\n",
|
| 479 |
+
"#sk-container-id-21 div.sk-estimator input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
|
| 480 |
+
" /* unfitted */\n",
|
| 481 |
+
" background-color: var(--sklearn-color-unfitted-level-2);\n",
|
| 482 |
+
"}\n",
|
| 483 |
+
"\n",
|
| 484 |
+
"#sk-container-id-21 div.sk-estimator.fitted input.sk-toggleable__control:checked~label.sk-toggleable__label {\n",
|
| 485 |
+
" /* fitted */\n",
|
| 486 |
+
" background-color: var(--sklearn-color-fitted-level-2);\n",
|
| 487 |
+
"}\n",
|
| 488 |
+
"\n",
|
| 489 |
+
"#sk-container-id-21 div.sk-label label.sk-toggleable__label,\n",
|
| 490 |
+
"#sk-container-id-21 div.sk-label label {\n",
|
| 491 |
+
" /* The background is the default theme color */\n",
|
| 492 |
+
" color: var(--sklearn-color-text-on-default-background);\n",
|
| 493 |
+
"}\n",
|
| 494 |
+
"\n",
|
| 495 |
+
"/* On hover, darken the color of the background */\n",
|
| 496 |
+
"#sk-container-id-21 div.sk-label:hover label.sk-toggleable__label {\n",
|
| 497 |
+
" color: var(--sklearn-color-text);\n",
|
| 498 |
+
" background-color: var(--sklearn-color-unfitted-level-2);\n",
|
| 499 |
+
"}\n",
|
| 500 |
+
"\n",
|
| 501 |
+
"/* Label box, darken color on hover, fitted */\n",
|
| 502 |
+
"#sk-container-id-21 div.sk-label.fitted:hover label.sk-toggleable__label.fitted {\n",
|
| 503 |
+
" color: var(--sklearn-color-text);\n",
|
| 504 |
+
" background-color: var(--sklearn-color-fitted-level-2);\n",
|
| 505 |
+
"}\n",
|
| 506 |
+
"\n",
|
| 507 |
+
"/* Estimator label */\n",
|
| 508 |
+
"\n",
|
| 509 |
+
"#sk-container-id-21 div.sk-label label {\n",
|
| 510 |
+
" font-family: monospace;\n",
|
| 511 |
+
" font-weight: bold;\n",
|
| 512 |
+
" display: inline-block;\n",
|
| 513 |
+
" line-height: 1.2em;\n",
|
| 514 |
+
"}\n",
|
| 515 |
+
"\n",
|
| 516 |
+
"#sk-container-id-21 div.sk-label-container {\n",
|
| 517 |
+
" text-align: center;\n",
|
| 518 |
+
"}\n",
|
| 519 |
+
"\n",
|
| 520 |
+
"/* Estimator-specific */\n",
|
| 521 |
+
"#sk-container-id-21 div.sk-estimator {\n",
|
| 522 |
+
" font-family: monospace;\n",
|
| 523 |
+
" border: 1px dotted var(--sklearn-color-border-box);\n",
|
| 524 |
+
" border-radius: 0.25em;\n",
|
| 525 |
+
" box-sizing: border-box;\n",
|
| 526 |
+
" margin-bottom: 0.5em;\n",
|
| 527 |
+
" /* unfitted */\n",
|
| 528 |
+
" background-color: var(--sklearn-color-unfitted-level-0);\n",
|
| 529 |
+
"}\n",
|
| 530 |
+
"\n",
|
| 531 |
+
"#sk-container-id-21 div.sk-estimator.fitted {\n",
|
| 532 |
+
" /* fitted */\n",
|
| 533 |
+
" background-color: var(--sklearn-color-fitted-level-0);\n",
|
| 534 |
+
"}\n",
|
| 535 |
+
"\n",
|
| 536 |
+
"/* on hover */\n",
|
| 537 |
+
"#sk-container-id-21 div.sk-estimator:hover {\n",
|
| 538 |
+
" /* unfitted */\n",
|
| 539 |
+
" background-color: var(--sklearn-color-unfitted-level-2);\n",
|
| 540 |
+
"}\n",
|
| 541 |
+
"\n",
|
| 542 |
+
"#sk-container-id-21 div.sk-estimator.fitted:hover {\n",
|
| 543 |
+
" /* fitted */\n",
|
| 544 |
+
" background-color: var(--sklearn-color-fitted-level-2);\n",
|
| 545 |
+
"}\n",
|
| 546 |
+
"\n",
|
| 547 |
+
"/* Specification for estimator info (e.g. \"i\" and \"?\") */\n",
|
| 548 |
+
"\n",
|
| 549 |
+
"/* Common style for \"i\" and \"?\" */\n",
|
| 550 |
+
"\n",
|
| 551 |
+
".sk-estimator-doc-link,\n",
|
| 552 |
+
"a:link.sk-estimator-doc-link,\n",
|
| 553 |
+
"a:visited.sk-estimator-doc-link {\n",
|
| 554 |
+
" float: right;\n",
|
| 555 |
+
" font-size: smaller;\n",
|
| 556 |
+
" line-height: 1em;\n",
|
| 557 |
+
" font-family: monospace;\n",
|
| 558 |
+
" background-color: var(--sklearn-color-background);\n",
|
| 559 |
+
" border-radius: 1em;\n",
|
| 560 |
+
" height: 1em;\n",
|
| 561 |
+
" width: 1em;\n",
|
| 562 |
+
" text-decoration: none !important;\n",
|
| 563 |
+
" margin-left: 1ex;\n",
|
| 564 |
+
" /* unfitted */\n",
|
| 565 |
+
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
|
| 566 |
+
" color: var(--sklearn-color-unfitted-level-1);\n",
|
| 567 |
+
"}\n",
|
| 568 |
+
"\n",
|
| 569 |
+
".sk-estimator-doc-link.fitted,\n",
|
| 570 |
+
"a:link.sk-estimator-doc-link.fitted,\n",
|
| 571 |
+
"a:visited.sk-estimator-doc-link.fitted {\n",
|
| 572 |
+
" /* fitted */\n",
|
| 573 |
+
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
|
| 574 |
+
" color: var(--sklearn-color-fitted-level-1);\n",
|
| 575 |
+
"}\n",
|
| 576 |
+
"\n",
|
| 577 |
+
"/* On hover */\n",
|
| 578 |
+
"div.sk-estimator:hover .sk-estimator-doc-link:hover,\n",
|
| 579 |
+
".sk-estimator-doc-link:hover,\n",
|
| 580 |
+
"div.sk-label-container:hover .sk-estimator-doc-link:hover,\n",
|
| 581 |
+
".sk-estimator-doc-link:hover {\n",
|
| 582 |
+
" /* unfitted */\n",
|
| 583 |
+
" background-color: var(--sklearn-color-unfitted-level-3);\n",
|
| 584 |
+
" color: var(--sklearn-color-background);\n",
|
| 585 |
+
" text-decoration: none;\n",
|
| 586 |
+
"}\n",
|
| 587 |
+
"\n",
|
| 588 |
+
"div.sk-estimator.fitted:hover .sk-estimator-doc-link.fitted:hover,\n",
|
| 589 |
+
".sk-estimator-doc-link.fitted:hover,\n",
|
| 590 |
+
"div.sk-label-container:hover .sk-estimator-doc-link.fitted:hover,\n",
|
| 591 |
+
".sk-estimator-doc-link.fitted:hover {\n",
|
| 592 |
+
" /* fitted */\n",
|
| 593 |
+
" background-color: var(--sklearn-color-fitted-level-3);\n",
|
| 594 |
+
" color: var(--sklearn-color-background);\n",
|
| 595 |
+
" text-decoration: none;\n",
|
| 596 |
+
"}\n",
|
| 597 |
+
"\n",
|
| 598 |
+
"/* Span, style for the box shown on hovering the info icon */\n",
|
| 599 |
+
".sk-estimator-doc-link span {\n",
|
| 600 |
+
" display: none;\n",
|
| 601 |
+
" z-index: 9999;\n",
|
| 602 |
+
" position: relative;\n",
|
| 603 |
+
" font-weight: normal;\n",
|
| 604 |
+
" right: .2ex;\n",
|
| 605 |
+
" padding: .5ex;\n",
|
| 606 |
+
" margin: .5ex;\n",
|
| 607 |
+
" width: min-content;\n",
|
| 608 |
+
" min-width: 20ex;\n",
|
| 609 |
+
" max-width: 50ex;\n",
|
| 610 |
+
" color: var(--sklearn-color-text);\n",
|
| 611 |
+
" box-shadow: 2pt 2pt 4pt #999;\n",
|
| 612 |
+
" /* unfitted */\n",
|
| 613 |
+
" background: var(--sklearn-color-unfitted-level-0);\n",
|
| 614 |
+
" border: .5pt solid var(--sklearn-color-unfitted-level-3);\n",
|
| 615 |
+
"}\n",
|
| 616 |
+
"\n",
|
| 617 |
+
".sk-estimator-doc-link.fitted span {\n",
|
| 618 |
+
" /* fitted */\n",
|
| 619 |
+
" background: var(--sklearn-color-fitted-level-0);\n",
|
| 620 |
+
" border: var(--sklearn-color-fitted-level-3);\n",
|
| 621 |
+
"}\n",
|
| 622 |
+
"\n",
|
| 623 |
+
".sk-estimator-doc-link:hover span {\n",
|
| 624 |
+
" display: block;\n",
|
| 625 |
+
"}\n",
|
| 626 |
+
"\n",
|
| 627 |
+
"/* \"?\"-specific style due to the `<a>` HTML tag */\n",
|
| 628 |
+
"\n",
|
| 629 |
+
"#sk-container-id-21 a.estimator_doc_link {\n",
|
| 630 |
+
" float: right;\n",
|
| 631 |
+
" font-size: 1rem;\n",
|
| 632 |
+
" line-height: 1em;\n",
|
| 633 |
+
" font-family: monospace;\n",
|
| 634 |
+
" background-color: var(--sklearn-color-background);\n",
|
| 635 |
+
" border-radius: 1rem;\n",
|
| 636 |
+
" height: 1rem;\n",
|
| 637 |
+
" width: 1rem;\n",
|
| 638 |
+
" text-decoration: none;\n",
|
| 639 |
+
" /* unfitted */\n",
|
| 640 |
+
" color: var(--sklearn-color-unfitted-level-1);\n",
|
| 641 |
+
" border: var(--sklearn-color-unfitted-level-1) 1pt solid;\n",
|
| 642 |
+
"}\n",
|
| 643 |
+
"\n",
|
| 644 |
+
"#sk-container-id-21 a.estimator_doc_link.fitted {\n",
|
| 645 |
+
" /* fitted */\n",
|
| 646 |
+
" border: var(--sklearn-color-fitted-level-1) 1pt solid;\n",
|
| 647 |
+
" color: var(--sklearn-color-fitted-level-1);\n",
|
| 648 |
+
"}\n",
|
| 649 |
+
"\n",
|
| 650 |
+
"/* On hover */\n",
|
| 651 |
+
"#sk-container-id-21 a.estimator_doc_link:hover {\n",
|
| 652 |
+
" /* unfitted */\n",
|
| 653 |
+
" background-color: var(--sklearn-color-unfitted-level-3);\n",
|
| 654 |
+
" color: var(--sklearn-color-background);\n",
|
| 655 |
+
" text-decoration: none;\n",
|
| 656 |
+
"}\n",
|
| 657 |
+
"\n",
|
| 658 |
+
"#sk-container-id-21 a.estimator_doc_link.fitted:hover {\n",
|
| 659 |
+
" /* fitted */\n",
|
| 660 |
+
" background-color: var(--sklearn-color-fitted-level-3);\n",
|
| 661 |
+
"}\n",
|
| 662 |
+
"</style><div id=\"sk-container-id-21\" class=\"sk-top-container\"><div class=\"sk-text-repr-fallback\"><pre>LogisticRegression()</pre><b>In a Jupyter environment, please rerun this cell to show the HTML representation or trust the notebook. <br />On GitHub, the HTML representation is unable to render, please try loading this page with nbviewer.org.</b></div><div class=\"sk-container\" hidden><div class=\"sk-item\"><div class=\"sk-estimator fitted sk-toggleable\"><input class=\"sk-toggleable__control sk-hidden--visually\" id=\"sk-estimator-id-21\" type=\"checkbox\" checked><label for=\"sk-estimator-id-21\" class=\"sk-toggleable__label fitted sk-toggleable__label-arrow fitted\"> LogisticRegression<a class=\"sk-estimator-doc-link fitted\" rel=\"noreferrer\" target=\"_blank\" href=\"https://scikit-learn.org/1.5/modules/generated/sklearn.linear_model.LogisticRegression.html\">?<span>Documentation for LogisticRegression</span></a><span class=\"sk-estimator-doc-link fitted\">i<span>Fitted</span></span></label><div class=\"sk-toggleable__content fitted\"><pre>LogisticRegression()</pre></div> </div></div></div></div>"
|
| 663 |
+
],
|
| 664 |
+
"text/plain": [
|
| 665 |
+
"LogisticRegression()"
|
| 666 |
+
]
|
| 667 |
+
},
|
| 668 |
+
"execution_count": 508,
|
| 669 |
+
"metadata": {},
|
| 670 |
+
"output_type": "execute_result"
|
| 671 |
+
}
|
| 672 |
+
],
|
| 673 |
+
"source": [
|
| 674 |
+
"# Train Logistic Regression Model\n",
|
| 675 |
+
"model = LogisticRegression()\n",
|
| 676 |
+
"model.fit(X_train_tfidf, y_train)"
|
| 677 |
+
]
|
| 678 |
+
},
|
| 679 |
+
{
|
| 680 |
+
"cell_type": "code",
|
| 681 |
+
"execution_count": 509,
|
| 682 |
+
"metadata": {},
|
| 683 |
+
"outputs": [],
|
| 684 |
+
"source": [
|
| 685 |
+
"# Predictions\n",
|
| 686 |
+
"y_pred = model.predict(X_test_tfidf)"
|
| 687 |
+
]
|
| 688 |
+
},
|
| 689 |
+
{
|
| 690 |
+
"cell_type": "markdown",
|
| 691 |
+
"metadata": {},
|
| 692 |
+
"source": [
|
| 693 |
+
"<h1>Model Evaluation</h1>\n",
|
| 694 |
+
"<h5>After training the model, we will use Evaluation metrics in order to judge if the model's predictions are correct.</h5>\n",
|
| 695 |
+
"<h5></h5>"
|
| 696 |
+
]
|
| 697 |
+
},
|
| 698 |
+
{
|
| 699 |
+
"cell_type": "code",
|
| 700 |
+
"execution_count": 510,
|
| 701 |
+
"metadata": {},
|
| 702 |
+
"outputs": [
|
| 703 |
+
{
|
| 704 |
+
"name": "stdout",
|
| 705 |
+
"output_type": "stream",
|
| 706 |
+
"text": [
|
| 707 |
+
"Accuracy: 0.7600\n",
|
| 708 |
+
"Classification Report:\n",
|
| 709 |
+
" precision recall f1-score support\n",
|
| 710 |
+
"\n",
|
| 711 |
+
" 0 0.70 0.78 0.74 18\n",
|
| 712 |
+
" 1 0.79 0.71 0.75 21\n",
|
| 713 |
+
" 2 0.82 0.82 0.82 11\n",
|
| 714 |
+
"\n",
|
| 715 |
+
" accuracy 0.76 50\n",
|
| 716 |
+
" macro avg 0.77 0.77 0.77 50\n",
|
| 717 |
+
"weighted avg 0.76 0.76 0.76 50\n",
|
| 718 |
+
"\n"
|
| 719 |
+
]
|
| 720 |
+
}
|
| 721 |
+
],
|
| 722 |
+
"source": [
|
| 723 |
+
"# Model Evaluation\n",
|
| 724 |
+
"accuracy = accuracy_score(y_test, y_pred)\n",
|
| 725 |
+
"print(f\"Accuracy: {accuracy:.4f}\")\n",
|
| 726 |
+
"print(\"Classification Report:\\n\", classification_report(y_test, y_pred))"
|
| 727 |
+
]
|
| 728 |
+
},
|
| 729 |
+
{
|
| 730 |
+
"cell_type": "markdown",
|
| 731 |
+
"metadata": {},
|
| 732 |
+
"source": [
|
| 733 |
+
"Note: This can be made better if we use different algorithms such as Naive Bayes"
|
| 734 |
+
]
|
| 735 |
+
},
|
| 736 |
+
{
|
| 737 |
+
"cell_type": "code",
|
| 738 |
+
"execution_count": 511,
|
| 739 |
+
"metadata": {},
|
| 740 |
+
"outputs": [
|
| 741 |
+
{
|
| 742 |
+
"data": {
|
| 743 |
+
"image/png": "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EUaPHo3w8HBdhElERCQKGSSaBeiAThKJ0srNzUWzZs0KtL/33nt4+fKlCBERERHpjlSrCbogiYeJDRgwAMuXLy/QvnLlSgQEBIgQERERERWHJCoSwKvFlvv370fLli0BAKdOnUJqaioGDhyIoKAg9XkRERFihUhERKQVQ65ISCKRuHz5Mjw9PQEAycnJAIDKlSujcuXKuHz5svo8mSHvnyEiIoNlyL+/JJFIHD58WOwQiIiISAuSSCSIiIgMGac2iIiISGsGPLMhjV0bREREVD6xIkFERKRnUn3gli6wIkFERKRnYt0i++7du+jfvz8qVaoEc3NzNGzYEGfPntXptbEiQUREZICePHkCb29vtG7dGnv27EGVKlWQlJQEe3t7nY7DRIKIiEjPxJjZmDt3LpycnLBmzRp1m4uLi87H4dQGERGRnhlBppOXUqlEenq6xkupVBY65o4dO9CsWTP07NkTDg4OaNq0KVatWqWHayMiIiK9ksl081IoFLC1tdV4KRSKQse8efMmli9fDldXV+zbtw9ffvklxowZg+joaJ1eG6c2iIiIyomQkBCN508BgFwuL/RclUqFZs2aYfbs2QCApk2b4vLly4iMjERgYKDOYmIiQUREpGe6urOlXC4vMnF4naOjIzw8PDTa3N3dsWXLFt0E8/8xkSAiItIzMe4j4e3tjWvXrmm0Xb9+HbVr19bpOFwjQUREZIDGjx+PkydPYvbs2bhx4wY2bNiAlStXYuTIkTodh4kEERGRnulqsWVJNG/eHNu2bcPGjRvRoEEDzJgxAwsXLkRAQIBOr41TG0RERHom1i2yu3Tpgi5duuh1DFYkiIiISGusSBAREemZAT+zi4kEERGRvhly+d+Qr42IiIj0jBUJIiIiPZMZ8NwGEwkiIiI9M9w0gokEERGR3om1/bMscI0EERERaY0VCSIiIj0z3HoEEwkiIiK9M+CZDU5tEBERkfZYkSAiItIzbv8kIiIirRly+d+Qr42IiIj0jBUJIiIiPePUBhEREWnNcNMITm0QERFRKbAiQUREpGec2ihnatibix0CScyTM0vFDoEk5NPVp8UOgSRk1xct9D6GIZf/DTKRICIikhJDrkgYcpJEREREesaKBBERkZ4Zbj2CiQQREZHeGfDMBqc2iIiISHusSBAREemZkQFPbjCRICIi0jNObRAREREVghUJ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",
|
| 744 |
+
"text/plain": [
|
| 745 |
+
"<Figure size 640x480 with 2 Axes>"
|
| 746 |
+
]
|
| 747 |
+
},
|
| 748 |
+
"metadata": {},
|
| 749 |
+
"output_type": "display_data"
|
| 750 |
+
}
|
| 751 |
+
],
|
| 752 |
+
"source": [
|
| 753 |
+
"# Confusion Matrix\n",
|
| 754 |
+
"cm = confusion_matrix(y_test, y_pred)\n",
|
| 755 |
+
"sns.heatmap(cm, annot=True, fmt='d', cmap='Blues', xticklabels=sentiment_mapping.keys(), yticklabels=sentiment_mapping.keys())\n",
|
| 756 |
+
"plt.xlabel(\"Predicted\")\n",
|
| 757 |
+
"plt.ylabel(\"Actual\")\n",
|
| 758 |
+
"plt.title(\"Confusion Matrix\")\n",
|
| 759 |
+
"plt.show()"
|
| 760 |
+
]
|
| 761 |
+
},
|
| 762 |
+
{
|
| 763 |
+
"cell_type": "code",
|
| 764 |
+
"execution_count": 512,
|
| 765 |
+
"metadata": {},
|
| 766 |
+
"outputs": [
|
| 767 |
+
{
|
| 768 |
+
"name": "stdout",
|
| 769 |
+
"output_type": "stream",
|
| 770 |
+
"text": [
|
| 771 |
+
"Model saved successfully\n"
|
| 772 |
+
]
|
| 773 |
+
}
|
| 774 |
+
],
|
| 775 |
+
"source": [
|
| 776 |
+
"joblib.dump(model, \"sentimentAnalysis_model.pkl\")\n",
|
| 777 |
+
"joblib.dump(vectorizer, \"vectorizer.pkl\")\n",
|
| 778 |
+
"print(\"Model saved successfully\")"
|
| 779 |
+
]
|
| 780 |
+
}
|
| 781 |
+
],
|
| 782 |
+
"metadata": {
|
| 783 |
+
"kernelspec": {
|
| 784 |
+
"display_name": "Python 3",
|
| 785 |
+
"language": "python",
|
| 786 |
+
"name": "python3"
|
| 787 |
+
},
|
| 788 |
+
"language_info": {
|
| 789 |
+
"codemirror_mode": {
|
| 790 |
+
"name": "ipython",
|
| 791 |
+
"version": 3
|
| 792 |
+
},
|
| 793 |
+
"file_extension": ".py",
|
| 794 |
+
"mimetype": "text/x-python",
|
| 795 |
+
"name": "python",
|
| 796 |
+
"nbconvert_exporter": "python",
|
| 797 |
+
"pygments_lexer": "ipython3",
|
| 798 |
+
"version": "3.12.3"
|
| 799 |
+
}
|
| 800 |
+
},
|
| 801 |
+
"nbformat": 4,
|
| 802 |
+
"nbformat_minor": 2
|
| 803 |
+
}
|
requirements.txt
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
streamlit
|
| 2 |
+
joblib
|
| 3 |
+
nltk
|
| 4 |
+
scikit-learn
|
sentimentAnalysis_model.pkl
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:2d6c2301bb6acda7a3534652f0a4e360b8690f2fed812d47b5559fb0be812a45
|
| 3 |
+
size 29839
|
sentiment_analysis.csv
ADDED
|
@@ -0,0 +1,500 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
Year,Month,Day,Time of Tweet,text,sentiment,Platform
|
| 2 |
+
2018,8,18,morning,What a great day!!! Looks like dream.,positive, Twitter
|
| 3 |
+
2018,8,18,noon,"I feel sorry, I miss you here in the sea beach",positive, Facebook
|
| 4 |
+
2017,8,18,night,Don't angry me,negative,Facebook
|
| 5 |
+
2022,6,8,morning,We attend in the class just for listening teachers reading on slide. Just Nonsence ,negative, Facebook
|
| 6 |
+
2022,6,8,noon,"Those who want to go, let them go",negative, Instagram
|
| 7 |
+
2016,11,22,night,"Its night 2 am, feeling neutral",neutral,Facebook
|
| 8 |
+
2017,12,28,morning,2 am feedings for the baby are fun when he is all smiles and coos,positive, Facebook
|
| 9 |
+
2017,12,28,noon,Soooo high,neutral, Instagram
|
| 10 |
+
2019,10,28,night, Both of you,neutral, Twitter
|
| 11 |
+
2018,5,28,morning,Today first time I arrive in the boat. Its amazing journey,positive, Facebook
|
| 12 |
+
2021,11,7,noon,Love is something like E=MC^2 rules,neutral, Instagram
|
| 13 |
+
2016,4,10,night,I really really like the song Cardigan by Taylor Swift,positive, Twitter
|
| 14 |
+
2016,5,15,morning,My Sharpie is running DANGERously low on ink,negative, Facebook
|
| 15 |
+
2016,11,15,noon,i want to go to music tonight but i lost my voice.,negative, Instagram
|
| 16 |
+
2016,11,15,night,Always somewhere I miss you where I have been,neutral, Twitter
|
| 17 |
+
2017,11,5,morning,Don't distrube me,negative, Facebook
|
| 18 |
+
2022,2,28,noon,"I don't care, who are you and what can you do",negative, Instagram
|
| 19 |
+
2023,1,28,night,i`ve been sick for the past few days ,neutral, Twitter
|
| 20 |
+
2020,3,5,morning,"I'm come back home, my past job, its really good time for me",positive, Facebook
|
| 21 |
+
2019,11,30,noon,I will never fall in love until I found you,positive, Instagram
|
| 22 |
+
2019,3,2,night," oh Maya, I`m so sorry!! I hope you find her soon!! ",neutral, Twitter
|
| 23 |
+
2019,11,30,morning,"Playing with kids, its amazing",positive, Facebook
|
| 24 |
+
2019,3,2,noon,is cleaning the house for her family who is comming later today..,neutral, Instagram
|
| 25 |
+
2019,8,28,night,I tried to shtdown my pc and accenditenly I click in the restart button. Its really disgusting,negative, Twitter
|
| 26 |
+
2016,7,1,morning,"Follow me, I will follow you too",neutral, Facebook
|
| 27 |
+
2023,1,15,noon,"Its amazing game, I playing everyday",positive, Instagram
|
| 28 |
+
2023,2,10,night, I`m sorry.,negative, Facebook
|
| 29 |
+
2019,11,18,morning,"I'm in the village now and there hardly found internate, feeling gloomy",negative, Instagram
|
| 30 |
+
2018,9,5,noon,juss came back from Barisal,neutral, Twitter
|
| 31 |
+
2020,4,2,night,Went to sleep and there is a power cut in the village. ,neutral, Facebook
|
| 32 |
+
2019,10,18,morning,How looks like our company new logo?,positive, Instagram
|
| 33 |
+
2023,1,18,noon,"I buy Sophie's world book, I'm really so happy",positive, Twitter
|
| 34 |
+
2023,1,30,night, If it is any consolation I got my BMI tested hahaha it says I am obesed well so much for being unhappy for about 10 minutes.,negative, Facebook
|
| 35 |
+
2019,4,15,morning, That`s very funny. Cute kids.,positive, Instagram
|
| 36 |
+
2017,8,25,noon," Ahhh, I slept through the game. I`m gonna try my best to watch tomorrow though. I hope we play Army.",neutral, Twitter
|
| 37 |
+
2022,4,5,night,My semester final exam is complete. Hurray!!!,positive, Facebook
|
| 38 |
+
2022,1,5,morning,Born and raised in NYC and living in Texas for the past 10 years! I still miss NY,negative, Instagram
|
| 39 |
+
2019,3,8,noon,"just in case you wonder, we are really busy today and this coming with with adding tons of new blogs and updates stay tuned",neutral, Twitter
|
| 40 |
+
2019,2,25,night,i`m soooooo sleeeeepy!!! the last day o` school was today....sniffle....,negative, Facebook
|
| 41 |
+
2018,11,5,morning, romance zero is funny,positive, Facebook
|
| 42 |
+
2019,9,14,noon," Car not happy, big big dent in boot! Hoping theyre not going to write it off, crossing fingers and waiting",neutral, Twitter
|
| 43 |
+
2018,11,5,morning,Yor are so unromantic,negative, Facebook
|
| 44 |
+
2020,8,29,morning,MAYDAY?!,neutral, Instagram
|
| 45 |
+
2014,6,3,noon, I`d rather do the early run..but I am a morning runner,neutral, Twitter
|
| 46 |
+
2020,8,29,night, I love to! But I`m only available from 5pm. and where dear?,positive, Facebook
|
| 47 |
+
2023,4,8,morning,The girl in the hair salon asked me 'Shall I trim your eyebrows!' How old do I feel?,neutral, Instagram
|
| 48 |
+
2020,4,2,morning, i talk to you,neutral, Facebook
|
| 49 |
+
2019,8,5,noon,"im soo bored, I don't like this music video",negative, Twitter
|
| 50 |
+
2023,5,20,night,this concert is amazing,positive, Instagram
|
| 51 |
+
2023,8,21,morning,"Had nicotine replacement patch on for 4 hours. So far, so good, but I did sleep for most of those 4 hours. Getting a bit twitchy now",neutral, Facebook
|
| 52 |
+
2023,9,11,noon,"Its raining, I need an umbrella ",neutral, Twitter
|
| 53 |
+
2023,9,3,night,should be sleeping. lost my voice a couple day ago.,negative, Instagram
|
| 54 |
+
2023,9,3,morning,"I'm depressed, I'm thinking about suicide, what I need to do now?",negative, Facebook
|
| 55 |
+
2019,8,30,noon, I`ve heard this fall. I`m waiting too!,neutral, Twitter
|
| 56 |
+
2023,9,9,night,I saw an amazing nightmare yesterday night,neutral, Instagram
|
| 57 |
+
2023,9,26,morning,I AM SUCH A CREEPER I feel disappointed because of it.,negative, Facebook
|
| 58 |
+
2020,11,29,noon,"I have bad headech, what I need to do now",negative, Twitter
|
| 59 |
+
2023,9,2,night,happy mother`s day to all moms out there. Mothers are our real hero,positive, Instagram
|
| 60 |
+
2023,9,14,morning,Grabbing coffee from then making mom breakfast,neutral, Facebook
|
| 61 |
+
2023,1,27,noon,im thinking that im going to have fun tonight,positive, Twitter
|
| 62 |
+
2023,2,1,night,Yesterday was most valuable day for me,positive, Instagram
|
| 63 |
+
2023,2,17,morning," Haha I know, I cant handle the fame! and thank you!",positive, Facebook
|
| 64 |
+
2023,2,26,noon,"One suggestion for me is, be up to date",neutral, Twitter
|
| 65 |
+
2023,3,1,night,"Always love everyone, love all animals. Most important love your parents",positive, Instagram
|
| 66 |
+
2015,12,22,morning,I'm playing minecraft video game. I'm addicated to it.,positive, Facebook
|
| 67 |
+
2015,12,18,noon,See you in the cloud,neutral, Twitter
|
| 68 |
+
2018,8,18,morning,What a great day!!! Looks like dream.,positive, Twitter
|
| 69 |
+
2018,8,18,noon,"I feel sorry, I miss you here in the sea beach",positive, Facebook
|
| 70 |
+
2017,8,18,night,Don't angry me,negative,Facebook
|
| 71 |
+
2022,6,8,morning,We attend in the class just for listening teachers reading on slide. Just Nonsence ,negative, Facebook
|
| 72 |
+
2022,6,8,noon,"Those who want to go, let them go",negative, Instagram
|
| 73 |
+
2016,11,22,night,"Its night 2 am, feeling neutral",neutral,Facebook
|
| 74 |
+
2017,12,28,morning,2 am feedings for the baby are fun when he is all smiles and coos,positive, Facebook
|
| 75 |
+
2017,12,28,noon,Soooo high,neutral, Instagram
|
| 76 |
+
2019,10,28,night, Both of you,neutral, Twitter
|
| 77 |
+
2018,5,28,morning,Today first time I arrive in the boat. Its amazing journey,positive, Facebook
|
| 78 |
+
2021,11,7,noon,Love is something like E=MC^2 rules,neutral, Instagram
|
| 79 |
+
2016,4,10,night,I really really like the song Cardigan by Taylor Swift,positive, Twitter
|
| 80 |
+
2016,5,15,morning,My Sharpie is running DANGERously low on ink,negative, Facebook
|
| 81 |
+
2016,11,15,noon,i want to go to music tonight but i lost my voice.,negative, Instagram
|
| 82 |
+
2016,11,15,night,Always somewhere I miss you where I have been,neutral, Twitter
|
| 83 |
+
2017,11,5,morning,Don't distrube me,negative, Facebook
|
| 84 |
+
2022,2,28,noon,"I don't care, who are you and what can you do",negative, Instagram
|
| 85 |
+
2023,1,28,night,i`ve been sick for the past few days ,neutral, Twitter
|
| 86 |
+
2020,3,5,morning,"I'm come back home, my past job, its really good time for me",positive, Facebook
|
| 87 |
+
2019,11,30,noon,I will never fall in love until I found you,positive, Instagram
|
| 88 |
+
2019,3,2,night," oh Maya, I`m so sorry!! I hope you find her soon!! ",neutral, Twitter
|
| 89 |
+
2019,11,30,morning,"Playing with kids, its amazing",positive, Facebook
|
| 90 |
+
2019,3,2,noon,is cleaning the house for her family who is comming later today..,neutral, Instagram
|
| 91 |
+
2019,8,28,night,I tried to shtdown my pc and accenditenly I click in the restart button. Its really disgusting,negative, Twitter
|
| 92 |
+
2016,7,1,morning,"Follow me, I will follow you too",neutral, Facebook
|
| 93 |
+
2023,1,15,noon,"Its amazing game, I playing everyday",positive, Instagram
|
| 94 |
+
2023,2,10,night, I`m sorry.,negative, Facebook
|
| 95 |
+
2019,11,18,morning,"I'm in the village now and there hardly found internate, feeling gloomy",negative, Instagram
|
| 96 |
+
2018,9,5,noon,juss came back from Barisal,neutral, Twitter
|
| 97 |
+
2020,4,2,night,Went to sleep and there is a power cut in the village. ,neutral, Facebook
|
| 98 |
+
2019,10,18,morning,How looks like our company new logo?,positive, Instagram
|
| 99 |
+
2023,1,18,noon,"I buy Sophie's world book, I'm really so happy",positive, Twitter
|
| 100 |
+
2023,1,30,night, If it is any consolation I got my BMI tested hahaha it says I am obesed well so much for being unhappy for about 10 minutes.,negative, Facebook
|
| 101 |
+
2019,4,15,morning, That`s very funny. Cute kids.,positive, Instagram
|
| 102 |
+
2017,8,25,noon," Ahhh, I slept through the game. I`m gonna try my best to watch tomorrow though. I hope we play Army.",neutral, Twitter
|
| 103 |
+
2022,4,5,night,My semester final exam is complete. Hurray!!!,positive, Facebook
|
| 104 |
+
2022,1,5,morning,Born and raised in NYC and living in Texas for the past 10 years! I still miss NY,negative, Instagram
|
| 105 |
+
2019,3,8,noon,"just in case you wonder, we are really busy today and this coming with with adding tons of new blogs and updates stay tuned",neutral, Twitter
|
| 106 |
+
2019,2,25,night,i`m soooooo sleeeeepy!!! the last day o` school was today....sniffle....,negative, Facebook
|
| 107 |
+
2018,11,5,morning, romance zero is funny,positive, Facebook
|
| 108 |
+
2019,9,14,noon," Car not happy, big big dent in boot! Hoping theyre not going to write it off, crossing fingers and waiting",neutral, Twitter
|
| 109 |
+
2018,11,5,morning,Yor are so unromantic,negative, Facebook
|
| 110 |
+
2020,8,29,morning,MAYDAY?!,neutral, Instagram
|
| 111 |
+
2014,6,3,noon, I`d rather do the early run..but I am a morning runner,neutral, Twitter
|
| 112 |
+
2020,8,29,night, I love to! But I`m only available from 5pm. and where dear?,positive, Facebook
|
| 113 |
+
2023,4,8,morning,The girl in the hair salon asked me 'Shall I trim your eyebrows!' How old do I feel?,neutral, Instagram
|
| 114 |
+
2020,4,2,morning, i talk to you,neutral, Facebook
|
| 115 |
+
2023,9,14,morning,Grabbing coffee from then making mom breakfast,neutral, Facebook
|
| 116 |
+
2023,1,27,noon,im thinking that im going to have fun tonight....and maybe some changes are coming,positive, Twitter
|
| 117 |
+
2023,2,1,night, thanks. before the major chop.,neutral, Instagram
|
| 118 |
+
2023,2,17,morning," Haha I know, I cant handle the fame! and thank you!",positive, Facebook
|
| 119 |
+
2023,2,26,noon,just got up and updated my ipod,neutral, Twitter
|
| 120 |
+
2023,3,1,night,"I still loving you, you are my love",positive, Instagram
|
| 121 |
+
2015,12,22,morning,"Lets go, its time to play cricket match",positive, Facebook
|
| 122 |
+
2015,12,18,noon,"Hey everyone, do you watch cricket match between eng vs aus yesterday",neutral, Twitter
|
| 123 |
+
2020,5,11,night,Australia cricket team I love you,positive, Instagram
|
| 124 |
+
2019,11,3,morning, which means you`re just going to have to come back to vancouver and have it our way! hahah,neutral, Facebook
|
| 125 |
+
2017,12,1,noon,Feeling smooth like chrome,positive, Twitter
|
| 126 |
+
2018,12,5,night,feeling gloomy,negative, Instagram
|
| 127 |
+
2017,9,10,morning,Today we will go a concert,neutral, Facebook
|
| 128 |
+
2016,2,28,noon,i need coffee too.,neutral, Twitter
|
| 129 |
+
2022,6,20,night, Sounds like me,neutral, Instagram
|
| 130 |
+
2016,8,20,morning,Bad day The day you realize what mess you`ve put me through will be one of the happiest days of my life...,neutral, Facebook
|
| 131 |
+
2016,9,22,noon,Walking to class. I hate not having a bike....especially mine.,negative, Twitter
|
| 132 |
+
2023,5,28,night,I'm start learning machine learning,neutral, Instagram
|
| 133 |
+
2023,8,26,morning,failed inspection. ,negative, Facebook
|
| 134 |
+
2023,8,28,noon,Lets sing a song,positive, Instagram
|
| 135 |
+
2023,9,20,night,happy father`s day to all the father in the world.,positive, Facebook
|
| 136 |
+
2023,10,14,morning,"Today, my semester final exam was really great",positive, Twitter
|
| 137 |
+
2023,9,4,noon,Really great day,positive, Instagram
|
| 138 |
+
2023,10,11,night,The exception for a short dude,neutral, Facebook
|
| 139 |
+
2023,1,15,morning,Congratulation for your achievement,positive, Twitter
|
| 140 |
+
2023,1,19,noon,"If you followed us recently, PLEASE dont be offended that we haven`t followed back. We hit our limit. ",positive, Instagram
|
| 141 |
+
2023,1,31,night, Yes i work 9 to 5 ,neutral, Facebook
|
| 142 |
+
2023,2,15,morning," Hmmm, maybe that`s what they meant. ",neutral, Twitter
|
| 143 |
+
2023,2,17,noon,Done at the spa now meeting vic for some late lunch!,neutral, Instagram
|
| 144 |
+
2023,2,19,night,Happy monday up and about going to tavares today. Hope everyone has a blessed day!,positive, Facebook
|
| 145 |
+
2023,2,24,morning, Always have wanted to go to university,neutral, Twitter
|
| 146 |
+
2023,2,28,noon, Thanks,neutral, Instagram
|
| 147 |
+
2012,2,18,night,Really great football match,positive, Facebook
|
| 148 |
+
2022,10,8,morning, that`s why I need to be there,positive, Twitter
|
| 149 |
+
2019,12,3,noon,Okay so I`m dedicating my 300th tweet to the fact that I`m going to the Apple store because there is a HUGE crack on the glass screen!,neutral, Instagram
|
| 150 |
+
2023,2,28,night, If only we could ever actually be allowed to stay here and do that,neutral, Facebook
|
| 151 |
+
2021,2,28,morning, Let me know how that turns out!!,neutral, Twitter
|
| 152 |
+
2021,11,29,noon, was that sass I detect? As long as it isn`t back sass! Haha,neutral, Instagram
|
| 153 |
+
2021,2,10,night," yeah I was thinking about that ,ahaha",positive, Facebook
|
| 154 |
+
2021,1,15,morning,Today is our EEE day,neutral, Instagram
|
| 155 |
+
2016,3,8,noon,I`m not sleeping at all until accepts my appology,negative, Twitter
|
| 156 |
+
2016,3,8,night,I'm studying in psychology,negative, Facebook
|
| 157 |
+
2016,10,18,morning," I live for pain, bring it on",neutral, Instagram
|
| 158 |
+
2023,5,23,noon,"okay, i`m out for a while back later!",neutral, Twitter
|
| 159 |
+
2023,5,25,night,"We visited worlds longest sea beach, Its really amazing time for us",positive, Facebook
|
| 160 |
+
2023,6,1,morning,almost died. Laptop screen was set to 100% brightness after I reinstalled Windows Vista. ,positive, Instagram
|
| 161 |
+
2023,6,9,noon,Waiting for tish to get off. Got to drive my moms CRV to pick her up all my myself and duckie. First time,neutral, Twitter
|
| 162 |
+
2023,6,20,night,your attitude looks like autistics child,negative, Facebook
|
| 163 |
+
2023,6,27,morning,going to shower because i don`t want to smell at school tomorrow,neutral, Instagram
|
| 164 |
+
2023,7,9,noon,Do you know sign languages,neutral, Twitter
|
| 165 |
+
2023,1,24,noon, Since the demise of Woolworths it isn`t easy to find reasonably priced pick n mix anywhere,negative, Twitter
|
| 166 |
+
2023,3,3,night,may the fourth be with you! happy star wars day,positive, Instagram
|
| 167 |
+
2023,8,9,noon,just got home from work,neutral, Twitter
|
| 168 |
+
2023,8,14,night, Yes it does. Please dont` go. If you die I will cry.. which normally leads to small animals getting harmed,negative, Instagram
|
| 169 |
+
2023,8,30,morning,writing report cards soooo tired but what an amazing day. check it out on fb soon!,positive, Facebook
|
| 170 |
+
2023,9,7,noon, it was only once for my big brother,neutral, Twitter
|
| 171 |
+
2023,10,5,night,good news: finally finished my bachelor degree,neutral, Instagram
|
| 172 |
+
2023,1,17,morning,"Well good morning all, What a wonderful day in the neighborhood Thanks for all those that are now following another 60 this morning",positive, Facebook
|
| 173 |
+
2023,1,24,noon,"yesterday I'm watch a movie, that’s was really motivated for me",positive, Twitter
|
| 174 |
+
2023,3,3,night, hope he is ok!,positive, Instagram
|
| 175 |
+
2013,4,5,morning,can`t school just be done already? it hurts too much... seeing him every day,positive, Facebook
|
| 176 |
+
2020,2,22,noon,"I waited, listening to wind blowing through the tumbleweed? Are none of you old enough to know what to do when someone says 'Crackerack'?",neutral, Twitter
|
| 177 |
+
2019,6,10,night, Hell Yeah!,neutral, Instagram
|
| 178 |
+
2020,6,22,morning, HIM shirt at dinner? Do you need to ask?? Does it actually have Ville on it?,neutral, Facebook
|
| 179 |
+
2018,12,10,noon, i know!!,neutral, Twitter
|
| 180 |
+
2023,5,30,night, Smelly? Noooo. I love alex Vixon,neutral, Instagram
|
| 181 |
+
2023,6,7,morning,"Went to a party last night. GREAT MINDS THINK ALIKE Anyway, happy birthday",positive, Facebook
|
| 182 |
+
2023,8,4,noon," Happy birthday! Just woke up on this side of Earth, so wishes are bit late",positive, Twitter
|
| 183 |
+
2023,9,17,night,"thank you for teaching me values and to be a better person each day I LOVE SO MUCH, YOU`RE THE BEST MUM IN THE WORLD",positive, Instagram
|
| 184 |
+
2020,1,5,morning,HAPPY MOTHERS DAY.!,positive, Facebook
|
| 185 |
+
2020,1,5,noon," laughs I`m glad that you have self confidence - it`s a wonderful trait to have I`ll applaud extra loud for it, okay?",positive, Twitter
|
| 186 |
+
2020,1,5,night, Thanks,positive, Instagram
|
| 187 |
+
2023,10,2,morning,twittering after 2 days!,neutral, Twitter
|
| 188 |
+
2015,11,10,noon,Getting ready for week Its too nice today to be stuck inside working!,positive, Instagram
|
| 189 |
+
2023,9,29,night,I am tres depressed,negative, Facebook
|
| 190 |
+
2023,10,8,morning,"Felt like ****, behaved like my son; ate to compensate. Pigged out on home-roasted sugar almonds. Painful tum, threw up, still feel sick.",negative, Twitter
|
| 191 |
+
2023,10,17,noon,Happy Mothers Day people. i love my mom a lot still,positive, Instagram
|
| 192 |
+
2020,11,15,night, I`m sorry to hear that.,negative, Facebook
|
| 193 |
+
2023,1,20,morning," That`s awesome dude, yay for surprise celebrities! I got to meet him a few years ago, he was soooo friendly.",positive, Twitter
|
| 194 |
+
2023,1,26,noon," it makes me happy to hear a girl talk, or tweet, about the nba. but... could you give my nuggets some love?!",positive, Instagram
|
| 195 |
+
2023,1,28,night,Is getting the hang of Twitter.,neutral, Facebook
|
| 196 |
+
2023,2,16,morning,You know your neck is jacked up when you are forced to pay for parking bc you can`t turn you head to parallel park in the free spaces...,negative, Twitter
|
| 197 |
+
2023,2,23,noon,I want it BACK NOW!,neutral, Instagram
|
| 198 |
+
2023,2,25,night,Going to miss my roomie ... We will no longer be roomies starting tomorrow,negative, Facebook
|
| 199 |
+
2014,7,20,morning,"bathing with two little angels, Keyla and Janice.",neutral, Twitter
|
| 200 |
+
2021,3,2,noon," Yep, finished, chocked full of spelling and grammatical errors, but I`m cleaning it up tomorrow and popping it up hehe",negative, Instagram
|
| 201 |
+
2020,2,28,night, HAHAHHA lol true that! i always remember my BD but i can never remember what date or even day it is,neutral, Twitter
|
| 202 |
+
2020,5,12,morning,"Family is here,hanging with them",neutral, Instagram
|
| 203 |
+
2019,11,18,noon,Watching Ellen Love her!! then doing the dishes and tanning ...it`s gorgeous out!,positive, Facebook
|
| 204 |
+
2019,11,18,night, what`s goin on hun? I`m worried about you,negative, Instagram
|
| 205 |
+
2021,5,20,morning, Im not bannished... but I am at work till 6,negative, Facebook
|
| 206 |
+
2019,8,20,noon," Morning! If I get to see it, I`ll let you know. Right now, I`m going to go see Wolverine.",neutral, Twitter
|
| 207 |
+
2023,9,14,morning,Grabbing coffee from then making mom breakfast,neutral, Facebook
|
| 208 |
+
2023,1,27,noon,im thinking that im going to have fun tonight....and maybe some changes are coming,positive, Twitter
|
| 209 |
+
2023,9,14,morning,Grabbing coffee from then making mom breakfast,neutral, Facebook
|
| 210 |
+
2023,1,27,noon,im thinking that im going to have fun tonight....and maybe some changes are coming,positive, Twitter
|
| 211 |
+
2023,2,1,night, thanks. before the major chop.,neutral, Instagram
|
| 212 |
+
2023,2,17,morning," Haha I know, I cant handle the fame! and thank you!",positive, Facebook
|
| 213 |
+
2023,2,26,noon,just got up and updated my ipod,neutral, Twitter
|
| 214 |
+
2023,3,1,night, yes! sober HAHAHA tanghaling tapat dude! haha WILD. i don`t knowwww plan plan before you go to US!,positive, Instagram
|
| 215 |
+
2015,12,22,morning, We never miss ICarly - my son has a huge crush on Miranda,positive, Facebook
|
| 216 |
+
2015,12,18,noon,Saw James carville in the store today. His head is really that bald,neutral, Twitter
|
| 217 |
+
2020,5,11,night,I love blue and programming,neutral, Instagram
|
| 218 |
+
2019,11,3,morning, which means you`re just going to have to come back to vancouver and have it our way! hahah,neutral, Facebook
|
| 219 |
+
2017,12,1,noon,Feeling smooth like chrome,positive, Twitter
|
| 220 |
+
2018,12,5,night,Errors are red but my life is looks like blue film,negative, Instagram
|
| 221 |
+
2017,9,10,morning,"downloading songs while trying to sneak a lil homework in too, which should be my main priority not songs lol",neutral, Facebook
|
| 222 |
+
2016,2,28,noon,"Errors are red but my life is blue, I love rose and your lips baby",positive, Twitter
|
| 223 |
+
2022,6,20,night, Sounds like me,neutral, Instagram
|
| 224 |
+
2016,8,20,morning,Bad day The day you realize what mess you`ve put me through will be one of the happiest days of my life...,neutral, Facebook
|
| 225 |
+
2016,9,22,noon,Walking to class. I hate not having a bike....especially mine.,negative, Twitter
|
| 226 |
+
2023,5,28,night,sounds good,neutral, Instagram
|
| 227 |
+
2023,8,26,morning,"failed inspection. Did you know you can pass wo/oven, but not wo/anti-tip bracket, which is only sold w/oven? This is worse than taxes.",negative, Facebook
|
| 228 |
+
2023,8,28,noon,"JONAS BROTHERS - Live to party. It`s rocking so hard I love the song,",positive, Instagram
|
| 229 |
+
2023,9,20,night,happy mother`s day to all the mothers in the world.,positive, Facebook
|
| 230 |
+
2023,10,14,morning,"I've got a fever, can you chcek, a good song, I'm listening this song everytime",positive, Twitter
|
| 231 |
+
2023,9,4,noon,Fun night! Listened through the next episode of this turkey drama,positive, Instagram
|
| 232 |
+
2023,10,11,night,The exception for a short dude: Larenz fineass Tate yum,neutral, Facebook
|
| 233 |
+
2023,1,15,morning,"Screw the reviews, I thought Wolverine was awesome. But not enough Dominic Monaghan for my liking.",positive, Twitter
|
| 234 |
+
2023,1,19,noon,"If you followed us recently, PLEASE dont be offended that we haven`t followed back. We hit our limit. Hopefully we will be free soon.",positive, Instagram
|
| 235 |
+
2023,1,31,night, Yes i work 6 to 3...,neutral, Facebook
|
| 236 |
+
2023,2,15,morning," Hmmm, maybe that`s what they meant. They eluded to something brand new but you know how the media is",neutral, Twitter
|
| 237 |
+
2023,2,17,noon,Done at the spa now meeting vic for some late lunch!,neutral, Instagram
|
| 238 |
+
2023,2,19,night,Happy monday up and about going to tavares today. Hope everyone has a blessed day!,positive, Facebook
|
| 239 |
+
2023,2,24,morning, Always have wanted to go to Oz,neutral, Twitter
|
| 240 |
+
2023,2,28,noon, Thx,neutral, Instagram
|
| 241 |
+
2012,2,18,night,I love this youtube tutorial,positive, Facebook
|
| 242 |
+
2022,10,8,morning, that`s why I need to be there...To represent the Blackberries,positive, Twitter
|
| 243 |
+
2019,12,3,noon,Okay so I`m dedicating my 300th tweet to the fact that I`m going to the Apple store because there is a HUGE crack on the glass screen!,neutral, Instagram
|
| 244 |
+
2023,2,28,night, If only we could ever actually be allowed to stay here and do that,neutral, Facebook
|
| 245 |
+
2021,2,28,morning, Let me know how that turns out!!,neutral, Twitter
|
| 246 |
+
2021,11,29,noon, was that sass I detect? As long as it isn`t back sass! Haha,neutral, Instagram
|
| 247 |
+
2021,2,10,night," yeah I was thinking about that ,ahaha",positive, Facebook
|
| 248 |
+
2021,1,15,morning, Dont know whether that helps. Google it to know more,neutral, Instagram
|
| 249 |
+
2016,3,8,noon,I`m not sleeping at all until accepts my appology,negative, Twitter
|
| 250 |
+
2016,3,8,night,"Wolverine Was BOSS! Seriously, And Will.I.Am Was In It, What The **** ??",negative, Facebook
|
| 251 |
+
2016,10,18,morning," I live for pain, bring it on",neutral, Instagram
|
| 252 |
+
2023,5,23,noon,"okay, i`m out for a while back later!",neutral, Twitter
|
| 253 |
+
2023,5,25,night, #powerblog What is this powerblog challenge you keep talking about? I`m a newbie follower,neutral, Facebook
|
| 254 |
+
2023,6,1,morning,almost died. Laptop screen was set to 100% brightness after I reinstalled Windows Vista. Got a headache now #insanedefaults,positive, Instagram
|
| 255 |
+
2023,6,9,noon,Waiting for tish to get off. Got to drive my moms CRV to pick her up all my myself and duckie. First time,neutral, Twitter
|
| 256 |
+
2023,6,20,night,"Trying to decide on a movie with the friends.. not going to well! lol :p No bible study 2nite, which means ****-day cake buy my own??",negative, Facebook
|
| 257 |
+
2023,6,27,morning,going to shower because i don`t want to smell at school tomorrow,neutral, Instagram
|
| 258 |
+
2023,7,9,noon, Sigh... you know I am...,neutral, Twitter
|
| 259 |
+
2023,7,14,night,"discovered cause of a bug in the new 4 build. Publishing bug fix now, hopefully new beta by tomorrow",positive, Facebook
|
| 260 |
+
2023,8,1,morning,Here are 4 FREE notebooks to know machine learning well,neutral, Instagram
|
| 261 |
+
2023,8,9,noon,just got home from work.... and is chugging down a big bottle of apple juice.,neutral, Twitter
|
| 262 |
+
2023,8,14,night, Yes it does. Please dont` go. If you die I will cry.. which normally leads to small animals getting harmed,negative, Instagram
|
| 263 |
+
2023,8,30,morning,writing report cards soooo tired but what an amazing day. check it out on fb soon!,positive, Facebook
|
| 264 |
+
2023,9,7,noon, it was only once for my big brother...and I`m done now,neutral, Twitter
|
| 265 |
+
2023,10,5,night,good news: finally finished my workout that has been paused for 6 hours. bad news: my resistance band is torn,neutral, Instagram
|
| 266 |
+
2023,1,17,morning,"Well good morning all, What a wonderful day in the neighborhood Thanks for all those that are now following another 60 this morning",positive, Facebook
|
| 267 |
+
2023,1,24,noon,FTSK and Mercy Mercedes were amazing tonight.. as always,positive, Twitter
|
| 268 |
+
2023,3,3,night, hope he is ok!,positive, Instagram
|
| 269 |
+
2013,4,5,morning,can`t school just be done already? it hurts too much... seeing him every day,positive, Facebook
|
| 270 |
+
2020,2,22,noon,"I waited, listening to wind blowing through the tumbleweed? Are none of you old enough to know what to do when someone says 'Crackerack'?",neutral, Twitter
|
| 271 |
+
2019,6,10,night, Hell Yeah!,neutral, Instagram
|
| 272 |
+
2020,6,22,morning, HIM shirt at dinner? Do you need to ask?? Does it actually have Ville on it?,neutral, Facebook
|
| 273 |
+
2018,12,10,noon, i know!!,neutral, Twitter
|
| 274 |
+
2023,5,30,night, huh what the ****? Smelly? Noooo. I love alex Vixon,neutral, Instagram
|
| 275 |
+
2023,6,7,morning,"Went to a party last night. Dindin and I showed up in matching outfits ) GREAT MINDS THINK ALIKE ) Anyway, happy birthday, ate lara",positive, Facebook
|
| 276 |
+
2023,8,4,noon," Happy b-day! Just woke up on this side of Earth, so wishes are bit late",positive, Twitter
|
| 277 |
+
2023,9,17,night,"thank you for teaching me values and to be a better person each day I LOVE SO MUCH, YOU`RE THE BEST MUM IN THE WORLD",positive, Instagram
|
| 278 |
+
2020,1,5,morning,HAPPY MOTHERS DAY.!,positive, Facebook
|
| 279 |
+
2020,1,5,noon," *laughs* I`m glad that you have self confidence - it`s a wonderful trait to have I`ll applaud extra loud for it, okay?",positive, Twitter
|
| 280 |
+
2020,1,5,night, Thanks,positive, Instagram
|
| 281 |
+
2023,10,2,morning,twittering after 2 days!,neutral, Twitter
|
| 282 |
+
2015,11,10,noon,Getting ready for week Its too nice today to be stuck inside working!,positive, Instagram
|
| 283 |
+
2023,9,29,night,I am tres depressed,negative, Facebook
|
| 284 |
+
2023,10,8,morning,"Felt like ****, behaved like my son; ate to compensate. Pigged out on home-roasted sugar almonds. Painful tum, threw up, still feel sick.",negative, Twitter
|
| 285 |
+
2023,10,17,noon,Happy Mothers Day people. i love my mom a lot still,positive, Instagram
|
| 286 |
+
2020,11,15,night, I`m sorry to hear that.,negative, Facebook
|
| 287 |
+
2023,1,20,morning," That`s awesome dude, yay for surprise celebrities! I got to meet him a few years ago, he was soooo friendly.",positive, Twitter
|
| 288 |
+
2023,1,26,noon," it makes me happy to hear a girl talk, or tweet, about the nba. but... could you give my nuggets some love?!",positive, Instagram
|
| 289 |
+
2023,1,28,night,Is getting the hang of Twitter.,neutral, Facebook
|
| 290 |
+
2023,2,16,morning,You know your neck is jacked up when you are forced to pay for parking bc you can`t turn you head to parallel park in the free spaces...,negative, Twitter
|
| 291 |
+
2023,2,23,noon,I want it BACK NOW!,neutral, Instagram
|
| 292 |
+
2023,2,25,night,Going to miss my roomie ... We will no longer be roomies starting tomorrow,negative, Facebook
|
| 293 |
+
2014,7,20,morning,"bathing with two little angels, Keyla and Janice.",neutral, Twitter
|
| 294 |
+
2021,3,2,noon," Yep, finished, chocked full of spelling and grammatical errors, but I`m cleaning it up tomorrow and popping it up hehe",negative, Instagram
|
| 295 |
+
2020,2,28,night, HAHAHHA lol true that! i always remember my BD but i can never remember what date or even day it is,neutral, Twitter
|
| 296 |
+
2020,5,12,morning,"Family is here,hanging with them",neutral, Instagram
|
| 297 |
+
2019,11,18,noon,Watching Ellen Love her!! then doing the dishes and tanning ...it`s gorgeous out!,positive, Facebook
|
| 298 |
+
2019,11,18,night, what`s goin on hun? I`m worried about you,negative, Instagram
|
| 299 |
+
2021,5,20,morning, Im not bannished... but I am at work till 6,negative, Facebook
|
| 300 |
+
2019,8,20,noon," Morning! If I get to see it, I`ll let you know. Right now, I`m going to go see Wolverine.",neutral, Twitter
|
| 301 |
+
2015,12,1,night," red top tabloids, build em up, knock em down",neutral, Instagram
|
| 302 |
+
2016,12,22,morning,tonight in party w/ my girls (minus vita),positive, Facebook
|
| 303 |
+
2020,6,15,noon, why not now you made me sad I thought you`d be jumping for joy,neutral, Twitter
|
| 304 |
+
2022,1,15,night, Simple my,neutral, Instagram
|
| 305 |
+
2023,6,4,morning,"The pics I just uploaded are the baby pics of my cats. Missy is now an adult and a pretty little kitty, but Batty is in kitten heaven now",neutral, Facebook
|
| 306 |
+
2023,6,14,noon," I saw the play of it here, it was amazing",positive, Twitter
|
| 307 |
+
2023,6,22,night,i am glad to break my twitter virginity with you two.,positive, Instagram
|
| 308 |
+
2023,6,29,morning,Dinner with the fam... I have missed them,negative, Facebook
|
| 309 |
+
2023,7,6,noon,"Live That`s what I want. More the better. Bound to be a few bad eggs though, but they will soon learn.",neutral, Twitter
|
| 310 |
+
2023,7,12,night,Hell yeah Kellynn got a Twitter. Finally.,neutral, Instagram
|
| 311 |
+
2023,7,18,morning," I know It was worth a shot, though!",positive, Facebook
|
| 312 |
+
2023,8,12,noon,"Just opened a facebook account, I`m a little confused I don`t really get it. Twitter seems much better",positive, Twitter
|
| 313 |
+
2023,8,18,night,Ship. I`m stuck.,negative, Instagram
|
| 314 |
+
2023,9,23,morning,DUSTBIN BABY ON AT 11.30 Cannot wait x,positive, Facebook
|
| 315 |
+
2018,6,22,noon," Not going to dwell on it. It happened, it`s passed. Just a shame as he was so supportive! Such is life! x",negative, Twitter
|
| 316 |
+
2023,10,20,night,whats the day going on,neutral, Instagram
|
| 317 |
+
2023,1,18,morning,It looks like the office TV DOES get MLB Network,neutral, Facebook
|
| 318 |
+
2022,4,3,noon,Home empty handed. No comics found today. I shall now indulge in my cupcakes from Magnolia Bakery.,neutral, Twitter
|
| 319 |
+
2016,7,10,night,Laying in bed til workkk... Oh the life. Definitely pinched a nerve.,negative, Instagram
|
| 320 |
+
2017,3,28,morning,today is a busy day. exhausting!,negative, Facebook
|
| 321 |
+
2023,8,6,noon," I was going to go on Sunday, but now I`ve got too much going on that weekend",neutral, Twitter
|
| 322 |
+
2023,8,23,night, Sorry to hear ur flight got cancelled that blows!!!,negative, Instagram
|
| 323 |
+
2023,1,17,morning,ohh my tooth is hurts ohh im sad it very hurts,negative, Facebook
|
| 324 |
+
2023,1,21,noon,"Before I get too distracted, I`d like to thank my new followers for taking the trouble to follow me! And to my others: feelin the love",positive, Twitter
|
| 325 |
+
2023,1,25,night, u think u have bills Ha!Ii just finished paying mine that`s y I`m broke,negative, Instagram
|
| 326 |
+
2023,1,28,morning, Not sure it didn`t say it was 2 big. I jst saw the pics of u on ur last bday. You looked so pretty!! I miss you!!,neutral, Facebook
|
| 327 |
+
2023,2,13,noon,sore throat. Planning the TET outing to Marwell though...good times,neutral, Twitter
|
| 328 |
+
2023,3,2,night,mcfly gig last nightt omg it was amazin didnt sit down through the whole thing mcfly did you see me and ma best mate we were in tutus,positive, Instagram
|
| 329 |
+
2013,4,20,morning,2 days without sleep and now a migraine. I thought life postR01 was meant to be relaxing,negative, Facebook
|
| 330 |
+
2022,9,28,noon, There!,neutral, Twitter
|
| 331 |
+
2021,5,10,night,?sucks!?..,negative, Instagram
|
| 332 |
+
2023,7,1,morning, whens the sway sway winner announced?,neutral, Twitter
|
| 333 |
+
2023,7,16,noon, K will check it out...,neutral, Facebook
|
| 334 |
+
2023,8,16,night," doing pretty well, up and wide awake",positive, Instagram
|
| 335 |
+
2018,9,22,morning,"i want to wake up early, and get a coffee tomorrow (today) ! it`s going to be a busyy day! but have to keep writing.. booo whoo!",neutral, Twitter
|
| 336 |
+
2021,8,20,noon,I Miss Daddy and Mommy,negative, Facebook
|
| 337 |
+
2022,9,15,night,"My dog is officially depressed that my brother`s dogs are gone. He doesn`t want to go outside and when we did, he play half-heartedly.",negative, Instagram
|
| 338 |
+
2018,10,12,morning,I just realized that I can`t forward text msgs with my iPhone.,neutral, Twitter
|
| 339 |
+
2018,6,15,noon,"My frist post... Off to find a new car for my parents, exciting!",positive, Facebook
|
| 340 |
+
2018,9,5,night,Argh noo! Missed The Killers on Wossy! That sucks! Missed out on Brandon. Total failure! Anyone know if it`s repeated? Must investigate!,negative, Instagram
|
| 341 |
+
2019,3,8,morning,seriously bored without anyone to talk to... but not tired enough for sleep,negative, Twitter
|
| 342 |
+
2017,6,12,noon, I am lost. Please help me find a good home.,negative, Instagram
|
| 343 |
+
2021,4,15,night,"It`s a Peter & Gordon morning -> And I, go to pieces and I wanna hide / Go to pieces and I almost die / Ever... ? http://blip.fm/~5yk38",neutral, Facebook
|
| 344 |
+
2022,11,15,morning,Ok so I`ve now got a bit of a bad back after lifting all drum hardware into my car downer.,negative, Instagram
|
| 345 |
+
2022,7,20,noon, LMAO... Smh! that one threw me off.,neutral, Twitter
|
| 346 |
+
2019,7,28,night, oh nice going!,positive, Instagram
|
| 347 |
+
2023,3,20,morning,Is getting ready for work... Working all weekend,neutral, Facebook
|
| 348 |
+
2021,4,15,noon,Gonna celebrate Mothers Day with the family but gonna start the partying tonite,positive, Twitter
|
| 349 |
+
2023,1,22,night, i agree with you!,positive, Instagram
|
| 350 |
+
2020,8,8,morning, I only do computers. Am hopeless at everything else,negative, Facebook
|
| 351 |
+
2018,7,10,noon,"90 degrees, gross skies, and thunderstorms...perfect match for my mood lol",positive, Twitter
|
| 352 |
+
2019,9,28,night,_2nd aww thanks!,positive, Instagram
|
| 353 |
+
2023,6,11,morning, Sorry RB is on PS3 for me,negative, Facebook
|
| 354 |
+
2023,6,17,noon,I saw amazing heeels. But they were too big,neutral, Twitter
|
| 355 |
+
2023,6,25,night,I just stuck my finger down my throat and there are a bunch of bumps on my tongue & throat.,negative, Instagram
|
| 356 |
+
2023,7,4,morning,dang last url went down ? http://blip.fm/~7aigm,negative, Facebook
|
| 357 |
+
2019,2,11,noon," ohoh i missed all ur tweets im gonna have to stay awake all night to see the announcement now, **** time difference",negative, Twitter
|
| 358 |
+
2018,6,3,night, Damnit all. That sucks. You were one of the ones I thought I`d drag back lol,negative, Instagram
|
| 359 |
+
2021,8,10,morning, my boss. She`s moving to NYC,neutral, Facebook
|
| 360 |
+
2023,3,10,noon,this is sooo crazy i have fever..,negative, Twitter
|
| 361 |
+
2023,2,22,night,is spending her Saturday morning taking notes for a research essay because some stupid **** recalled the book I`m using. Not fair,negative, Instagram
|
| 362 |
+
2020,8,20,morning,I think i need some new friends,neutral, Facebook
|
| 363 |
+
2017,1,12,noon, Looking forward to your gig in Ireland!!! See ya there!,neutral, Twitter
|
| 364 |
+
2020,9,18,night,I' watching a movie name Adimurie,positive, Instagram
|
| 365 |
+
2020,4,5,morning,aww you loooove me,positive, Facebook
|
| 366 |
+
2020,8,12,noon,"is hungry, twitter. i want food.",neutral, Twitter
|
| 367 |
+
2020,3,1,night,awesome lucky you,positive, Instagram
|
| 368 |
+
2017,6,18,morning," yea, i should know.. but tell me EVERYTHING! ps: send me direct messages telling.. haha",neutral, Facebook
|
| 369 |
+
2022,4,18,noon," haha im jewish, i love that one",positive, Twitter
|
| 370 |
+
2020,12,17,night,"had a great time out in the beer garden wit the boyos !! I think the sun got to me a bit though, feel a bit ill !!",neutral, Instagram
|
| 371 |
+
2022,7,17,morning, l`m on 3 days too matt. No fun this weekend.,negative, Facebook
|
| 372 |
+
2020,11,1,noon, u really don`t think so? maybe ur right....lol. btw what phone u using? think u told me b4...i might have an app for u,neutral, Instagram
|
| 373 |
+
2023,1,19,night, I feel your pain. Mine is the same way,negative, Twitter
|
| 374 |
+
2023,1,25,morning,comes home in two days,neutral, Facebook
|
| 375 |
+
2023,1,27,noon, Sadly no. It didn`t come with one...,negative, Instagram
|
| 376 |
+
2023,2,18,night,Cant wait to see my boy tomorrow,positive, Twitter
|
| 377 |
+
2023,2,19,morning, ehhh no. just a check up. I have a dentist app next week though. getting my molar pulled/root canal.,neutral, Facebook
|
| 378 |
+
2023,2,27,noon, aww I miss driving down elmwood,negative, Instagram
|
| 379 |
+
2023,2,28,night,Omg Wango Tango was **** AWSOME! I love my baby for taking me,positive, Twitter
|
| 380 |
+
2012,3,10,morning,"Version 2 of our live, interactive Trans-Siberian ticket planner is launched",positive, Facebook
|
| 381 |
+
2021,12,3,noon,_30439 I really wish I could go!,positive, Instagram
|
| 382 |
+
2021,10,22,night," yeah real hard, but I know you`ll get by with it... smile",neutral, Twitter
|
| 383 |
+
2022,1,15,morning, I`m 25 in december that`s not good at all next big birthday is 30 after 21 it flys by for sure,negative, Facebook
|
| 384 |
+
2023,5,6,noon, This has made my night!! Way too funny!!,positive, Instagram
|
| 385 |
+
2023,5,6,night,Woo CAVS. Happy Mother`s Day!,positive, Twitter
|
| 386 |
+
2020,2,10,morning, I make that same face when I get home and your mom is watching soaps.,neutral, Facebook
|
| 387 |
+
2023,3,30,noon,I have to go to work now.,neutral, Instagram
|
| 388 |
+
2023,2,16,night, I can`t believe you went and got boba without me.,neutral, Facebook
|
| 389 |
+
2023,2,25,morning," And to you too, how are you today?",neutral, Twitter
|
| 390 |
+
2021,12,8,noon, Thanks for the warm welcome! We didn`t make plans because our arrival time was so up in the air.,positive, Instagram
|
| 391 |
+
2021,12,8,night,19 days and counting,neutral, Facebook
|
| 392 |
+
2022,5,12,morning, sorry friends - I`m swamped with deadlines right now and we have family visiting to boot! No charades for me.,negative, Instagram
|
| 393 |
+
2023,1,7,noon,BRAINFREEZE,neutral, Twitter
|
| 394 |
+
2017,8,28,night,Just discovered a shortcoming of Gravity. When you use Twitpic (integrated) it doesn`t subtract the pic URL from the 140 character limit,neutral, Facebook
|
| 395 |
+
2018,3,10,morning,"My sunburn is peeling,",negative, Instagram
|
| 396 |
+
2021,8,15,noon,perky purple nail polish isn`t as perky when its chipped,neutral, Twitter
|
| 397 |
+
2020,11,18,night,"http://twitpic.com/4sx96 - before they put a CAMERA in the smokers pit. i can no longer vandalize that door, without being caught.",neutral, Facebook
|
| 398 |
+
2023,1,21,morning,Laying ALONE!! Since Mook`s soo comfy in his f`n play pen. I thought it was ill at first now I don`t have no one to cuddle with...,negative, Instagram
|
| 399 |
+
2023,1,29,noon,I hate the dentist,negative, Twitter
|
| 400 |
+
2019,3,28,night," nothing aimed at you, just joining in...sorry",negative, Facebook
|
| 401 |
+
2019,6,28,morning,I`m taking a twitter break. Cell is dying,negative, Instagram
|
| 402 |
+
2019,11,28,noon, qood morninq,neutral, Twitter
|
| 403 |
+
2022,4,15,night,writing my english original writing storyyyyy. and listening to `a little respect` by erasure aaaaaah.,neutral, Facebook
|
| 404 |
+
2022,12,1,morning,needs more followers,neutral, Instagram
|
| 405 |
+
2017,4,15,noon,I wish I could get my nails done stupid job,negative, Twitter
|
| 406 |
+
2017,12,22,night,The little wormy from labyrinth sadly passed away today but its ok as hes still around in a happy ghost form aww http://twitpic.com/67aim,neutral, Facebook
|
| 407 |
+
2018,9,22,morning, the 'no pants' idea could be the new attempt world-wide to attract business back to the airlines.,neutral, Instagram
|
| 408 |
+
2023,4,10,noon, Have a good one,positive, Facebook
|
| 409 |
+
2023,1,16,night," yep infact she is popular, miss india 99, talented film actress .... and lot more",positive, Twitter
|
| 410 |
+
2023,1,23,morning,Dosen`t Want To Go To Work Tomorrow,negative, Instagram
|
| 411 |
+
2023,2,12,noon,Daniel has won DSDS. His voice is great.,positive, Facebook
|
| 412 |
+
2023,2,21,night,I need blood O negative,neutral, Instagram
|
| 413 |
+
2023,3,2,morning,was hoping to go to Red Lobster this weekend,neutral, Twitter
|
| 414 |
+
2011,6,20,noon,_x_ATL u mean jack barakat`s?! wow so have u ever gone to his house? Hehe i mean ur ssoo lucky to have the address!,positive, Instagram
|
| 415 |
+
2015,9,12,night,I sure do hope it becomes 4:20 this afternoon ...,positive, Facebook
|
| 416 |
+
2014,7,10,morning, it means that you are now FAMOUS. Congrats!,positive, Twitter
|
| 417 |
+
2016,12,5,noon,My phone passed away yesterday.. He jumped off the table Searching for a new phone...,negative, Instagram
|
| 418 |
+
2023,1,30,night,"I have such fantastic friends, including several ones met through here! thanks for being in my life - you are such amazing people!",positive, Facebook
|
| 419 |
+
2021,1,15,morning,tamlyn wishes she was as cool as my sock draw,positive, Twitter
|
| 420 |
+
2010,11,12,noon, so no rice or crusty bread with the chili .... aawww,neutral, Instagram
|
| 421 |
+
2018,8,7,night," We are of like minds this evening , my dear!",neutral, Facebook
|
| 422 |
+
2017,7,18,morning,come and save me from my packing please?!,neutral, Instagram
|
| 423 |
+
2023,1,28,noon,"Yes, I love tea. If that makes me typically English then so be it",positive, Twitter
|
| 424 |
+
2019,6,25,night, a mouth for sure,positive, Facebook
|
| 425 |
+
2020,9,15,morning,_dec0de I finally just have 1 hour of history... at 3.00 pm! but I went to my highschool at 8.00 am to make some homework with a friend,neutral, Instagram
|
| 426 |
+
2022,7,25,noon, pancakes!! with lemon and sugar thanks!,positive, Twitter
|
| 427 |
+
2015,9,1,night," Si, no bueno I guess I just don`t entertain him ",negative, Facebook
|
| 428 |
+
2015,9,1,morning,I`m so hunrgy right now and these heels kill me I can hardly walk in them,negative, Instagram
|
| 429 |
+
2019,5,15,noon,both electronic keys stopped working. there is no keyhole! cant get in my car. so much for technology,negative, Twitter
|
| 430 |
+
2019,4,18,night," Yay, three followers! Good to know more than one person in this big wide world likes fishies.",positive, Facebook
|
| 431 |
+
2019,11,10,morning,'my name is Tony!!!!!! ...not hey!!!!' - poor tony,negative, Instagram
|
| 432 |
+
2016,12,12,noon,Goodmorning,positive, Twitter
|
| 433 |
+
2018,3,15,night,Took a shift tomorrow. I don`t really feel like working right now.,negative, Facebook
|
| 434 |
+
2015,6,28,morning," I love mine, too . happy mother�s day to your mom , John Taylor . much love to you, too .",positive, Instagram
|
| 435 |
+
2015,12,18,noon,Saw a black snake in the garden. Went back for a picture and it was gone,neutral, Twitter
|
| 436 |
+
2015,11,10,night,http://twitpic.com/4wukt - We bought Ludi her own rug. Dogs are the best,positive, Facebook
|
| 437 |
+
2015,9,28,morning,No waterfront anymore faccia luna and clarendon will have to do,negative, Instagram
|
| 438 |
+
2023,2,15,noon,loves her mum very much! Happy Mothers Day to all the wonderful mothers out there,positive, Twitter
|
| 439 |
+
2017,8,22,night,Slipped up and caught the flu feeling like poop!,negative, Facebook
|
| 440 |
+
2020,3,15,morning,"i have an urge to play wow but i have to wait 2 weeks til im at my dads! 5+47DAYS TIL MCFLY, im so excited (L)",positive, Instagram
|
| 441 |
+
2023,3,10,noon,Ok ... the passengers ... no one is alive ... they`re all dead ... you just don`t know it til the end ... then you cry ...,negative, Twitter
|
| 442 |
+
2020,12,15,night,Discovered and are sharing on G reader with me and didn`t even know it. Sigh.... I`m such a G reader newb.,neutral, Twitter
|
| 443 |
+
2020,12,15,morning,"is chilled out tonite, so cannot spew venom or write funny. Seems like these are the only 2 styles she has",neutral, Instagram
|
| 444 |
+
2017,11,15,noon," If u do, please pray 4 me. Lord knows I need it.",neutral, Facebook
|
| 445 |
+
2023,2,28,night,aaaaaw i want to live in the USA,neutral, Twitter
|
| 446 |
+
2020,4,15,morning,Morning tweeple,positive, Instagram
|
| 447 |
+
2021,4,5,noon," Hey, I didn`t get any !!!",neutral, Facebook
|
| 448 |
+
2022,7,10,night, Now you only have 2 hours to sleep... - Rest if you need it.,positive, Twitter
|
| 449 |
+
2020,4,2,morning," That makes my day so much better, it`s been a rough one. Did I mention I love the new photo!",neutral, Instagram
|
| 450 |
+
2020,7,18,noon,I don`t want to sit at home on prom night. Someone hang out with me,negative, Facebook
|
| 451 |
+
2015,7,12,night,Is heading home from foot surgery and wishing she had a boyfriend to come over and cuddle with,positive, Twitter
|
| 452 |
+
2021,10,8,morning,concert tonight chackin out and not coming tomorrow!,neutral, Instagram
|
| 453 |
+
2021,9,20,noon, what happened? I thought you were coming back today....,neutral, Twitter
|
| 454 |
+
2021,9,20,night, lol dammit well then next time then,negative, Facebook
|
| 455 |
+
2019,11,8,morning, lol. just don`t ever forget me,positive, Instagram
|
| 456 |
+
2019,10,8,noon, Still jealous,negative, Twitter
|
| 457 |
+
2018,12,15,night,Me at Forever 21 Ethan couldn`t be there,negative, Facebook
|
| 458 |
+
2016,6,15,morning,NOW IM SAD BUT IM NOT GIVING IN FIRST..I DIDNT DO NOTHING!!!! :**-(,negative, Instagram
|
| 459 |
+
2022,1,28,noon,this week of mine was not easy! but finally it`s over! (:,negative, Twitter
|
| 460 |
+
2022,1,8,night, Wow what a beautiful picture... and by the way....I am straight....just wanted to let you know!!! Bella,positive, Facebook
|
| 461 |
+
2015,8,22,morning,In Arch. Drawing. Checking out MVCC`s CAD degree. Looks good to me,positive, Instagram
|
| 462 |
+
2019,4,18,noon," 'there are people and then there are pencils' some are sharp, some are not and some can be sharpened my pencil philosophy.....",neutral, Instagram
|
| 463 |
+
2020,9,10,night,"just about to go home. I`m usually `mr. positive` but this has been one of those daze. well, 15 mins until tomorrow!",neutral, Twitter
|
| 464 |
+
2017,11,5,morning, but you always have lee. Let`s go to Paris,neutral, Facebook
|
| 465 |
+
2021,7,20,noon, you know you want to come keep me company whilst mum`s at her friends for the night it`s such a nice evening!,positive, Instagram
|
| 466 |
+
2022,8,10,night,cooking with my dad having lots of fun in the kitchen together,positive, Twitter
|
| 467 |
+
2022,8,10,morning,Bouncing Rush makes me feel nauseous,negative, Facebook
|
| 468 |
+
2022,3,20,noon,Off to Woolsery this morning to (hopefully) see North Molton U16 clinch the North Devon League title. Lovely day for it,positive, Instagram
|
| 469 |
+
2019,5,5,night,playing singstar without my fave duetter,negative, Twitter
|
| 470 |
+
2021,3,15,morning," you`re missing out, bb! i`m such a cereal nut, i think i like every kind available.",positive, Facebook
|
| 471 |
+
2021,8,2,noon," That`s just weird... :\ Oh, and what was it you were drawing for me?",negative, Instagram
|
| 472 |
+
2021,6,10,night,Just woke up :o mums singing to her new gn`r cd replacement i bought because im a good daughter,positive, Instagram
|
| 473 |
+
2018,7,15,morning,"The birds are out,, oh man... That`s NOT cool && I didn`t sleep yet for the night!!!",negative, Twitter
|
| 474 |
+
2019,11,2,noon,"250 miles down, only 1750 to go. Thats ok, u2 on the radio alwas helps.",positive, Facebook
|
| 475 |
+
2018,12,5,night,"My Street Fighter IV skills are lacking, can`t beat Seth on easy.",negative, Instagram
|
| 476 |
+
2023,1,15,morning, FIL 461 with cool people like me,positive, Twitter
|
| 477 |
+
2023,1,18,noon,Good Morning!!! Work and then it`s ESPN`s Sunday night Baseball. hopefully it won`t get rained out,positive, Facebook
|
| 478 |
+
2016,11,28,night, i think it`s under a honeymoon by the good life -- either that or it`s under a honey moon by joseph arthur.,neutral, Instagram
|
| 479 |
+
2021,10,2,morning,my son got stung by a bug for the first time his little finger is slightly swollen.,negative, Twitter
|
| 480 |
+
2022,11,28,noon, it was hours ago i came in.... and it`s only now i realised when i went to buy something online,neutral, Facebook
|
| 481 |
+
2022,7,5,night, oh just referring to our lil exchange on LJ with regards to twitter archive postings.,neutral, Instagram
|
| 482 |
+
2016,9,28,morning,Bumping dj opus in the drunk in the car. lmao. Don`t act like u don`t know.,negative, Twitter
|
| 483 |
+
2021,9,15,noon,Why kiss the feet of the people who kick you when you can be anything that you want to? morning everyone! Hope you have the best day ever,positive, Instagram
|
| 484 |
+
2022,2,28,night,Here`s a brief preview: OMG James is creepy in that role! I`m scared of him,negative, Facebook
|
| 485 |
+
2023,1,16,morning,I`m missing crab legs and attending my going away instead!,negative, Twitter
|
| 486 |
+
2018,11,7,noon,Hicks are mean!,negative, Instagram
|
| 487 |
+
2017,3,20,night,"gettn ready to take a trip to Jersey my dad`s not doing so good, he needs a new heart~whoeva see`s this please say a prayer for my dad",negative, Facebook
|
| 488 |
+
2023,3,22,morning,"back soon, need to run to the shops and cut the grass",neutral, Twitter
|
| 489 |
+
2018,7,10,noon,I`m up. I have a plan to transform my bedroom today. Random.,neutral, Instagram
|
| 490 |
+
2021,11,30,night,"Home until tomorrow. Did my running and spinning. Now time for chiropractor, laundry, shopping, and visiting family. Missing nathan",negative, Facebook
|
| 491 |
+
2021,11,30,morning, thats another sponsor,neutral, Instagram
|
| 492 |
+
2023,1,22,noon," And most of us are going to be stuck in an office, some without windows",negative, Twitter
|
| 493 |
+
2023,1,24,night, No it`s not sad. Should make you proud,negative, Instagram
|
| 494 |
+
2023,1,27,morning," Sorry, we`ll try to keep it down.",negative, Facebook
|
| 495 |
+
2023,3,3,noon,is home alone.. Doing hw,neutral, Instagram
|
| 496 |
+
2015,10,18,night,"According to , a quarter of families under six live in poverty.",negative, Twitter
|
| 497 |
+
2021,2,25,morning,the plan to not spend money is not going well,negative, Instagram
|
| 498 |
+
2022,5,30,noon,uploading all my bamboozle pictures of facebook,neutral, Facebook
|
| 499 |
+
2018,8,10,night, congratulations ! you guys finish a month early than we do. booo,positive, Twitter
|
| 500 |
+
2019,3,25,morning," actually, I wish I was back in Tahoe. I miss it there.",negative, Instagram
|
vectorizer.pkl
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:58104b1bcbeb9aa47573a7700b81da612a477282c0402d0b9d8f7d4af8f4164d
|
| 3 |
+
size 39183
|