Skip to main content

Algorithmically predict public sentiment on a topic using VADER sentiment analysis

Project description

abraham

Algorithmically predict public sentiment on a topic using VADER sentiment analysis.

Sample Output

You can run one command to do everything -

from prophets import Isaiah
darthvader = Isaiah(news_source="google", splitting=True) # splitting means that it recursively splits a large text into sentences and analyzes each individually

# this command takes a bit of time to run because it has to download lots of articles
scores = darthvader.sentiment(["robinhood", 
                      "johnson and johnson", 
                      "bitcoin", 
                      "dogecoin", 
                      "biden",  
                      "amazon"], 
                      window=2, # how many days back from up_to to get news from
                      up_to="04/18/2021") # latest date to get news from

print(scores)

'''
{'robinhood': 
    {
        'avg': 0.3798676562301132, 
        'nice': 'positive :)'
     },
 'johnson and johnson': 
    {
        'avg': 0.27466788299009787, 
        'nice': 'positive :)'
    },
 'bitcoin': 
    {
        'avg': 0.28669931035859125, 
        'nice': 'positive :)'
    },
 'dogecoin': 
    {
        'avg': 0.2837840361036227, 
        'nice': 'positive :)'
    },
 'biden': 
    {
        'avg': 0.2404157345348728, 
        'nice': 'positive :)'
    },
 'amazon': 
    {
        'avg': 0.2894022880254384, 
        'nice': 'positive :)'
    }
}
'''

Or, you can run it step by step, as well.

from prophets import Isaiah
darthvader = Isaiah(news_source="google", splitting=True) # splitting means that it recursively splits a large text into sentences and analyzes each individually

# this command takes a bit of time to run because it has to download lots of articles
articles = darthvader.get_articles(["robinhood", 
                      "johnson and johnson", 
                      "bitcoin", 
                      "dogecoin", 
                      "biden",  
                      "amazon"]
                      window=2, # how many days back from up_to to get news from
                      up_to="04/18/2021") # latest date to get news from

scores = darthvader.score_all(articles)

print(scores)

'''
{'robinhood': 
    {
        'avg': 0.3798676562301132, 
        'nice': 'positive :)'
     },
 'johnson and johnson': 
    {
        'avg': 0.27466788299009787, 
        'nice': 'positive :)'
    },
 'bitcoin': 
    {
        'avg': 0.28669931035859125, 
        'nice': 'positive :)'
    },
 'dogecoin': 
    {
        'avg': 0.2837840361036227, 
        'nice': 'positive :)'
    },
 'biden': 
    {
        'avg': 0.2404157345348728, 
        'nice': 'positive :)'
    },
 'amazon': 
    {
        'avg': 0.2894022880254384, 
        'nice': 'positive :)'
    }
}
'''

Isaiah supports two news sources: [Google News](google news) and NewsAPI. Default is [Google News](google news), but you can change it to NewsAPI by passing Isaiah(news_source='newsapi') when instantiating. In order to use NewsAPI, you have to put your api key in keys/newsapi_org.

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

abraham3k-1.0.2.tar.gz (2.3 kB view details)

Uploaded Source

Built Distribution

abraham3k-1.0.2-py3-none-any.whl (2.0 kB view details)

Uploaded Python 3

File details

Details for the file abraham3k-1.0.2.tar.gz.

File metadata

  • Download URL: abraham3k-1.0.2.tar.gz
  • Upload date:
  • Size: 2.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5

File hashes

Hashes for abraham3k-1.0.2.tar.gz
Algorithm Hash digest
SHA256 43a164a906a98165acb820da0eeb8fce1d425f57941a7bd2b0ba83ddd51ac018
MD5 90fc4bd0f054a80d45a1f1b124bcf265
BLAKE2b-256 e0a684a8d9b143e0e7e142cbf93999f7f3e6331fd3af8421b10750bce848882f

See more details on using hashes here.

File details

Details for the file abraham3k-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: abraham3k-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 2.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/3.10.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/3.8.5

File hashes

Hashes for abraham3k-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 e5bb72702397cac5a0675a0631b5f97e7a65012db0f58d30e2cefe505fabbb2c
MD5 988192a315c0e03ed5a5748152fe87e2
BLAKE2b-256 c6707ba726abfcf402f8c1ca9c7c49c763d0b912dd6149a2b852d75b5ed56d0b

See more details on using hashes here.

Supported by

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