Skip to content

Latest commit

 

History

History
97 lines (63 loc) · 2.45 KB

README.md

File metadata and controls

97 lines (63 loc) · 2.45 KB

✨ DailyTrends 5.0 (final/stable) ✨

Downloads

🚨 ALL BUGS FIXED🚨 - Update to version 5.0

  • Fully operational after new versions of pandas broke the restructuring pipe.
  • Google API change, so the code was adjusted (again).
  • The timerange can now be specified approximately.
  • The region (geo) can now be specified.

Purpose

This lightweight API solves the problem of getting only monthly-based data for large time series when collecting Google Trends data. No login required.

Installation

Install via PyPi:

$ pip install DailyTrends

Usage

>>> from DailyTrends.collect import collect_data

Queries are submitted in a gentle manner, which can be slow (but safe) for very large series.

>>> data = collect_data("AMD stock",start="2004-01-01", end="2019-07-06",
                    geo="", save=False, verbose=False)  
>>> data.info()

<class 'pandas.core.frame.DataFrame'>
DatetimeIndex: 5666 entries, 2004-01-01 to 2019-07-06
Freq: D
Data columns (total 1 columns):
AMD stock: (Worldwide)    5666 non-null float64
dtypes: float64(1)
memory usage: 88.5 KB
  • The returned dataframe is already indexed and ready for storage/analysis.
  • The end of the series defaults to "TODAY".
  • The start of the series defaults to "2004-01-01".
  • The geo parameter defaults to "", which yields global results.
# Plotting some rolling means of the daily data
>>> ax = data.rolling(10).mean().plot();
>>> data.rolling(25).mean().plot(ax=ax);
>>> data.rolling(50).mean().plot(ax=ax)

image.png

Add your own data

# In this case the historic prices of the stock
>>> import pandas as pd
>>> price_data = pd.read_csv("price_data.csv")
>>> merged = pd.merge(price_data, data,
                  left_index=True, right_index=True)
>>> merged[["AMD stock: (Worldwide)", "Open"]].rolling(30).mean().plot()

image.png

Load multiple queries

>>> data = collect_data(["Intel", "AMD"],start="2004-01-01", end="TODAY",
                    geo="DE", save=False, verbose=False)      
                

To-Do

  • Add Tor-Network-based requests

Disclaimer

This API is not supported by Google and is for experimental purposes only.