Skip to main content

Assess whether a twitter is positive or negative based on the user's recent tweets

Project description

ci-cd Documentation Status PyPI License: MIT

twitterpersona

Twitter is a popular social media app with over 1 billion user accounts. While a diversity of users is a strength, some individuals have concerns with the prevalence of "troll" accounts and individuals who exhibit unconstructive tone and diction whom they deem not worth engaging with. The package twitterpersona is intended to provide insight into a twitter user based on their tweet history in effort to determine if an account is worth engaging with. The package provides an easy to use interface for determining the general sentiment expressed by a user.

Contributors and Maintainers

Quick Start

To get started with twitterpersona, install it using pip:

$ pip install twitterpersona

Please visit the documentation for more information and examples.

Classes and Functions

  1. load_twitter_msg: returns a user's recent tweets (as a dataframe) given their user id using the Twitter API.
    1. user_info(): get user credentials details
    2. load_twitter_by_user(): load specific user's tweets
    3. load_twitter_by_keywords(): load specific keyword's tweets
  2. sentiment_analysis: determines the general (average) sentiment of recent tweets
    1. sentiment_labler(): returns all tweets with the corresponding labels
  3. preprocessing: a spotter that identifies credit card numbers
    1. generalPreprocessing: returns the processed tweet dataframe
  4. generate_word_cloud: a spotter that identifies credit card numbers
    1. create_wordcloud: returns a matplotlib plot of the wordcloud

Below is a simple quick start example:

from twitterpersona import load_twitter_msg, sentiment_analysis, preprocessing, generate_word_cloud

# Create a cleanser, and don't add the default spotters
user = user_info('consumer key', 'consumer secret', 'access_token', 'token_secret')
twitter_df = load_twitter_by_user('someuser', 30, user)
sentiment_df = sentiment_labler(twitter_df, 'text')
cleaned_df = generalPreprocessing(sentiment_df)
plt = generate_word_cloud(cleaned_df)

In order to run test, you need to first install the vader_lexicon package

$ python -m nltk.downloader vader_lexicon

Scope and Fit

There are existing packages that preform tweet analysis (including twitter-sentiment-analysis, tweetlytics, and pytweet). However, none of these packages focus of providing metrics in the context of determining if the twitter user is worth engaging with.

Contributing

Interested in contributing? Check out the contributing guidelines in CONTRIBUTING.md. Please note that this project is released with a Code of Conduct. By contributing to this project, you agree to abide by its terms.

License

twitterpersona was created by Andy Wang, Renzo Wijngaarden, Roan Raina, Yurui Feng. It is licensed under the terms of the MIT license.

Credits

twitterpersona was created with cookiecutter and the py-pkgs-cookiecutter template.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

twitterpersona-0.3.2.tar.gz (19.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

twitterpersona-0.3.2-py3-none-any.whl (17.8 kB view details)

Uploaded Python 3

File details

Details for the file twitterpersona-0.3.2.tar.gz.

File metadata

  • Download URL: twitterpersona-0.3.2.tar.gz
  • Upload date:
  • Size: 19.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for twitterpersona-0.3.2.tar.gz
Algorithm Hash digest
SHA256 4a30b6f836e770bdc38a2edaf98f35493dc3e6bdd51ad83f824f4c900a0a6b9b
MD5 a5cc90cc73cd80ba3eed3ece55549720
BLAKE2b-256 190d78a2716a47cb9a49b5d6bb75c22dbf2c6440ec271ab5f9a7cfe69dfa03d2

See more details on using hashes here.

File details

Details for the file twitterpersona-0.3.2-py3-none-any.whl.

File metadata

  • Download URL: twitterpersona-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 17.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.11.1

File hashes

Hashes for twitterpersona-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1368c5ed3657bad3a8bd5d725bb88e8b59d8c530e73739a2b4bb9ee8e6ec3745
MD5 8358a90bdfd5685750f39bf3f12a2c32
BLAKE2b-256 f54744da0e4d170cc3e91bd4f0433b325bf564e6339bd09cf24c74c3e098c83d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page