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.1.0.tar.gz (2.3 kB view details)

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: abraham3k-1.1.0.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.1.0.tar.gz
Algorithm Hash digest
SHA256 3e356e24a256c327099715f48130ef61b7fe7398457df555abdb3a3996b1a442
MD5 a8d192a1adc6abaae162cd3d57bbfff4
BLAKE2b-256 ce7f320aa718784b53ebcb4e073f36f278cf36d953560a93beb8590983a21dda

See more details on using hashes here.

File details

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

File metadata

  • Download URL: abraham3k-1.1.0-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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3a1f69a75f14efdbd20ce0bebb71e0d81993713f3575b433f064c2e05ca8f5df
MD5 c6bc931b30492f58c3fbb2c3cac01941
BLAKE2b-256 95b068b022913fb970d5ab80b0f462af5d6f399393ef06e93b86791345cc0bfe

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