Coronavirus : La collecte de données en action: obtenez et analysez l'attention de Covid-19 dans Google Trends avec Python-Deephub-Blog Park

21

Dans le domaine de la recherche sur les maladies infectieuses, les données des médias sociaux se sont révélées être un indicateur du début et de la progression des saisons du rhume et de la grippe. Dans cet article, nous utiliserons l'API Google Trends pour mesurer l'état du coronavirus. Nous utiliserons python API Google Trends pytrends pour effectuer une recherche google pour "coronavirus" au niveau de l'état.

Installer les dépendances

Pour installer pytrends, ouvrez une ligne de commande et entrez:

pip install pytrends

Pour nous, si vous avez besoin d'un proxy, vous devez installer les dépendances des requêtes

pip install requests(socks)

Écrire du code

Ouvrez ensuite votre éditeur préféré (j'utilise PyCharm Community Edition)

from pytrends.request import TrendReq

Ensuite, nous spécifions la langue hôte, le fuseau horaire et la charge utile. Nous spécifions la langue hôte comme anglais ("en-US"), le fuseau horaire comme "Central Standard Time Zone", qui est "360", et vous pouvez laisser le filtre d'attribut Google (gprop) comme une chaîne vide. Nous avons également défini la catégorie = 0, ce qui correspond à toutes les catégories liées au mot clé. Obtenons des données sur le coronavirus à New York de février 2020 à mars 2020:

pytrends = TrendReq(hl='en-US', tz=360)
pytrends.build_payload(('Coronavirus'), cat=0, timeframe='2020-02-01 2020-03-10',  gprop='', geo='US-NY')

Ensuite, nous définissons une trame de données comme l'objet pytrends généré et imprimons les cinq premières lignes:

df = pytrends.interest_over_time()
print(df.head())

Image de contenu
Nous pouvons également utiliser seaborn et matplotlib pour tracer la série chronologique des recherches sur les «coronavirus»:

import matplotlib.pyplot as plt
import seaborn as sns
import pandas as pdsns.set()
df('timestamp') = pd.to_datetime(df.index)
sns.lineplot(df('timestamp'), df('Coronavirus'))plt.title("Normalized Searches for Coronavirus in NY")
plt.ylabel("Number of Searches")
plt.xlabel("Date")


Faisons de même pour le coronavirus du Massachusetts:

Encapsulé en fonction

Nous pouvons définir une fonction qui nous permet d'extraire ces données pour n'importe quelle semaine:

def get_searches(key_word, state):
    pytrends = TrendReq(hl='en-US', tz=360)
    pytrends.build_payload((key_word), cat=0, timeframe='2020-02-01 2020-03-10',  gprop='',geo='US-{}'.format(state))    
    df = pytrends.interest_over_time()


    print(df.head())

    sns.set()
    df('timestamp') = pd.to_datetime(df.index)
    sns.lineplot(df('timestamp'), df(key_word))

    plt.title("Normalized Searches for {} in {}".format(key_word, state))
    plt.ylabel("Number of Searches")
    plt.xlabel("Date")

Jetons un coup d'œil à NY, MA, CA:

get_searches('Coronavirus', 'NY')
get_searches('Coronavirus', 'MA')
get_searches('Coronavirus', 'CA')


Nous pouvons extraire des données d'autres États ou de l'ensemble des États-Unis. Vous pouvez également utiliser d'autres entrées de mots clés pour fonctionner. Peut-être voulez-vous rechercher «Symptômes du coronavirus» ou «Taux de mortalité du coronavirus».

Résumé

Nous avons utilisé la bibliothèque python "pytrends" pour extraire les données Google Trends au niveau de l'état correspondant au mot clé "coronavirus". Les données des médias sociaux, telles que les données de Google Trends, peuvent être utiles pour mesurer l'engagement social sur des sujets liés à la santé publique, tels que le coronavirus. Cela peut aider les agences de santé comme le CDC à évaluer quantitativement les besoins, à allouer les ressources et à communiquer les mesures préventives. J'espère que vous avez trouvé cet article utile / intéressant.

D'après la courbe, nous pouvons voir que bien que Trump ait dit qu'il ne l'aimait pas, le peuple américain ne le pensait pas. Les stars de la NBA Mitchell et Tom Hanks sont infectées, donc l'attention du public américain a atteint son apogée.

Voici pour

Enfin, vérifiez pourquoi les étrangers aiment le papier toilette?
Il a été rapporté que des étrangers ont confondu le coronavirus et le norovirus, et les principaux symptômes causés par le norovirus sont la diarrhée, et il n'y a pas de vaccins et de médicaments à effets spéciaux. Ensuite, nous examinons le degré d'attention que les étrangers accordent à ce mot:

Il semble que ce soit vraiment le cas. La popularité de ce mot-clé a explosé après novembre. La tendance de croissance de base est la même que celle du coronavirus, donc de ce point de vue, il a vraiment une certaine relation avec l'orthographe.