Kaleb Horvath (kaleb-horvath)

kaleb-horvath

Geek Repo

Company:https://github.com/kaleb-horvath/resume

Location:Columbus, GA

Github PK Tool:Github PK Tool

Kaleb Horvath's starred repositories

scdl

Soundcloud Music Downloader

Language:PythonLicense:GPL-2.0Stargazers:3194Issues:0Issues:0

GeoJsonTools

GeoJsonTools is a python library made to create, transorm and use GeoJson and Shapefiles

Language:PythonStargazers:1Issues:0Issues:0

PythonGeoJSON

python code to deal with GeoJSON

Language:Jupyter NotebookStargazers:1Issues:0Issues:0

python-geoJSON

python tools for converting shapefiles to geoJSON format with added graphic properties

Language:PythonLicense:GPL-3.0Stargazers:1Issues:0Issues:0

Sentiment_Analysis_with_Insights

Sentiment Analysis with Insights using NLP and Dash This project show the sentiment analysis of text data using NLP and Dash. I used Amazon reviews dataset to train the model and further scrap the reviews from Etsy.com in order to test my model. Prerequisites: Python3 Amazon Dataset (3.6GB) Anaconda How this project was made? This project has been built using Python3 to help predict the sentiments with the help of Machine Learning and an interactive dashboard to test reviews. To start, I downloaded the dataset and extracted the JSON file. Next, I took out a portion of 7,92,000 reviews equally distributed into chunks of 24000 reviews using pandas. The chunks were then combined into a single CSV file called balanced_reviews.csv. This balanced_reviews.csv served as the base for training my model which was filtered on the basis of review greater than 3 and less than 3. Further, this filtered data was vectorized using TF_IDF vectorizer. After training the model to a 90% accuracy, the reviews were scrapped from Etsy.com in order to test our model. Finally, I built a dashboard in which we can check the sentiments based on input given by the user or can check the sentiments of reviews scrapped from the website. What is CountVectorizer? CountVectorizer is a great tool provided by the scikit-learn library in Python. It is used to transform a given text into a vector on the basis of the frequency (count) of each word that occurs in the entire text. This is helpful when we have multiple such texts, and we wish to convert each word in each text into vectors (for using in further text analysis). CountVectorizer creates a matrix in which each unique word is represented by a column of the matrix, and each text sample from the document is a row in the matrix. The value of each cell is nothing but the count of the word in that particular text sample. What is TF-IDF Vectorizer? TF-IDF stands for Term Frequency - Inverse Document Frequency and is a statistic that aims to better define how important a word is for a document, while also taking into account the relation to other documents from the same corpus. This is performed by looking at how many times a word appears into a document while also paying attention to how many times the same word appears in other documents in the corpus. The rationale behind this is the following: a word that frequently appears in a document has more relevancy for that document, meaning that there is higher probability that the document is about or in relation to that specific word a word that frequently appears in more documents may prevent us from finding the right document in a collection; the word is relevant either for all documents or for none. Either way, it will not help us filter out a single document or a small subset of documents from the whole set. So then TF-IDF is a score which is applied to every word in every document in our dataset. And for every word, the TF-IDF value increases with every appearance of the word in a document, but is gradually decreased with every appearance in other documents. What is Plotly Dash? Dash is a productive Python framework for building web analytic applications. Written on top of Flask, Plotly.js, and React.js, Dash is ideal for building data visualization apps with highly custom user interfaces in pure Python. It's particularly suited for anyone who works with data in Python. Dash apps are rendered in the web browser. You can deploy your apps to servers and then share them through URLs. Since Dash apps are viewed in the web browser, Dash is inherently cross-platform and mobile ready. Dash is an open source library, released under the permissive MIT license. Plotly develops Dash and offers a platform for managing Dash apps in an enterprise environment. What is Web Scrapping? Web scraping is a term used to describe the use of a program or algorithm to extract and process large amounts of data from the web. Running the project Step 1: Download the dataset and extract the JSON data in your project folder. Make a folder filtered_chunks and run the data_extraction.py file. This will extract data from the JSON file into equal sized chunks and then combine them into a single CSV file called balanced_reviews.csv. Step 2: Run the data_cleaning_preprocessing_and_vectorizing.py file. This will clean and filter out the data. Next the filtered data will be fed to the TF-IDF Vectorizer and then the model will be pickled in a trained_model.pkl file and the Vocabulary of the trained model will be stored as vocab.pkl. Keep these two files in a folder named model_files. Step 3: Now run the etsy_review_scrapper.py file. Adjust the range of pages and product to be scrapped as it might take a long long time to process. A small sized data is sufficient to check the accuracy of our model. The scrapped data will be stored in csv as well as db file. Step 4: Finally, run the app.py file that will start up the Dash server and we can check the working of our model either by typing or either by selecting the preloaded scrapped reviews.

Language:PythonStargazers:13Issues:0Issues:0

json_to_csv

python script to convert large json data in GBs to .csv format using PANDAS by processing chunks of data

Language:PythonStargazers:1Issues:0Issues:0

json_flattener

A python utility that flattens nested JSON into database-palatable chunks

Language:Jupyter NotebookStargazers:1Issues:0Issues:0

LISP

Lisp interpreter in less than 500 lines of C, including a copying garbage collector and an implementation of LISP 1.5 from 1962.

Language:CLicense:MITStargazers:440Issues:0Issues:0

lispc

simple x86-64 lisp compiler

Language:PythonStargazers:2Issues:0Issues:0

zheme

Working though Abdulaziz Ghuloum's Scheme compiler tutorial in Python.

Language:PythonStargazers:12Issues:0Issues:0

pasquim

A Scheme compiler written in Python.

Language:PythonLicense:MITStargazers:1Issues:0Issues:0

pie

scheme to python-bytecode compiler

Language:PythonStargazers:5Issues:0Issues:0

SchemePar

A (partial) Scheme Compiler using Python

Language:PythonStargazers:2Issues:0Issues:0
Language:CLicense:GPL-3.0Stargazers:1Issues:0Issues:0