繁体   English   中英

如何使用 Pandas 从 GitHub 读取 CSV 文件

[英]How to read CSV file from GitHub using pandas

我正在尝试使用 Pandas 使用 Python 读取 github 上的 CSV 文件我究竟做错了什么?

我试过这个:

import pandas as pd

url = 'https://github.com/lukes/ISO-3166-Countries-with-Regional-Codes/blob/master/all/all.csv'
df = pd.read_csv(url,index_col=0)
#df = pd.read_csv(url)

print(df.head(5))

您应该提供原始内容的 URL。 尝试使用这个:

import pandas as pd

url = 'https://raw.githubusercontent.com/lukes/ISO-3166-Countries-with-Regional-Codes/master/all/all.csv'
df = pd.read_csv(url, index_col=0)
print(df.head(5))

输出:

               alpha-2           ...            intermediate-region-code
name                             ...                                    
Afghanistan         AF           ...                                 NaN
Åland Islands       AX           ...                                 NaN
Albania             AL           ...                                 NaN
Algeria             DZ           ...                                 NaN
American Samoa      AS           ...                                 NaN

在 GitHub URL 末尾添加?raw=true以获取原始文件链接。

在你的情况下,

import pandas as pd
url = 'https://github.com/lukes/ISO-3166-Countries-with-Regional-Codes/blob/master/all/all.csv?raw=true'
df = pd.read_csv(url,index_col=0)
#df = pd.read_csv(url)

print(df.head(5))

注意:这仅适用于 GitHub 链接,不适用于 GitLab 或 Bitbucket 链接。

我建议要么像你尝试的那样使用熊猫,其他人在这里已经解释过,或者根据应用程序,python csv-handler CommaSeperatedPython ,它是原生 csv-library 的简约包装器。

该库以二维字符串数组的形式返回文件的内容。 不过它还处于早期阶段,所以如果你想做大规模的数据分析,我会建议 Pandas。

您可以复制/粘贴网址并更改两件事:

  1. 删除“斑点”
  2. 用 raw.githubusercontent.com 替换 github.com

例如这个链接:

https://github.com/mwaskom/seaborn-data/blob/master/iris.csv

以这种方式工作:

import pandas as pd

pd.read_csv('https://raw.githubusercontent.com/mwaskom/seaborn-data/master/iris.csv')

首先将 github csv 文件转换为 raw 以访问数据,请按照下面的链接评论如何将 csv 文件转换为 raw 。

import pandas as pd

url_data = (r'https://raw.githubusercontent.com/oderofrancis/rona/main/Countries-Continents.csv')

data_csv = pd.read_csv(url_data)

data_csv.head()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM