Github CSV使用Python进行COVID-19数据分析

时间:2020-04-24 19:02:07

标签: python pandas selenium github python-requests

此链接包含用于COVID-19每日报告的CSV文件。

https://github.com/CSSEGISandData/COVID-19/tree/master/csse_covid_19_data/csse_covid_19_daily_reports

将所有csv文件保存在数据框中的最佳解决方案是什么?

我从其他问题中尝试了下面的代码,但这没有用。

from pathlib import Path
import pandas as pd

files = Path('https://github.com/CSSEGISandData/COVID-19/tree/master/csse_covid_19_data/csse_covid_19_daily_reports')

csv_only = files.rglob('*.csv')

combo = [pd.read_csv(f)
         .assign(f.stem)
         .fillna(0)
         for f in csv_only]

one_df = pd.concat(combo,ignore_index=True)

one_df = one_df.drop_duplicates('date')
print(one_df)

我如何满足读取所有文件的请求?

2 个答案:

答案 0 :(得分:1)

您可以简单地使用requests模块来获取当前所有.csv的名称,这样就无需运行glob

import requests
url = "https://github.com/CSSEGISandData/COVID-19/tree/master/csse_covid_19_data/csse_covid_19_daily_reports"
csv_only  = [i.split("=")[1][1:-1] for i in requests.get(url).text.split(" ") if '.csv' in i and 'title' in i]

答案 1 :(得分:0)

pathlib仅适用于文件系统,因此无法使用。 csv_only将是一个空生成器,因为磁盘上没有这样的位置。您需要使用实际的http请求从github获取数据。一段时间前,我为某些个人物品做了一些操作,您可以have a look并进行相应的修改(使用github API,因此您需要获取一个)。