将Google表格数据导入pandas数据框
我想把谷歌表格里的数据导入到 pandas
中进行分析。我的一个表格里有好几个数据集,所以不能像这里的例子那样直接用CSV格式导入:将谷歌表格的CSV导入到Pandas数据框中
这是我在表格中数据的样子:
Date letters numbers mixed
1/1/2014 a 3 z1
1/2/2014 b 2 y2
1/3/2014 c 1 x3
我使用了 gspread
来导入数据,现在每一行都代表一个观察值,数据看起来像这样:
[['Date', 'letters', 'numbers', 'mixed'], ['1/1/2014', 'a', '3', 'z1'], ['1/2/2014', 'b', '2', 'y2'], ['1/3/2014', 'c', '1', 'x3']]
我的问题是,怎么把这些数据放进pandas的数据框里,并且用数字作为索引?我不想用日期作为索引。我需要一个通用的解决方案,因为我的数据集有1000行和50列。
3 个回答
0
还有一种方法可以把谷歌表格传输到Python的Pandas库,反过来也可以,这个方法叫做df2gspread:http://df2gspread.readthedocs.io/en/latest/overview.html#usage1
设置这个工具只需要10分钟,而且只需要写3行代码就能搞定:
from df2gspread import gspread2df as g2d
df = g2d.download(gfile="your_spreadsheet_ID", col_names=True, row_names=True)
我刚刚设置好这个工具,如果你有任何问题,随时问我哦。
0
如果你想把 pandas
数据框和 Google 表格连接起来,那你来对地方了! gspread-dataframe
就是你需要的工具。它填补了 gspread
和 pandas
之间的空缺。
你可以通过运行 pip install gspread-dataframe
来安装它。
4
这是我会做的事情
import pandas as pd
d=[['Date', 'letters', 'numbers', 'mixed'],\
['1/1/2014', 'a', '3', 'z1'],\
['1/2/2014', 'b', '2', 'y2'],\
['1/3/2014', 'c', '1', 'x3']]
df = pd.DataFrame.from_records(d[1:],columns=d[0])
df.set_index('numbers')
这是结果
Date letters mixed
numbers
3 1/1/2014 a z1
2 1/2/2014 b y2
1 1/3/2014 c x3