【发布时间】:2021-01-12 02:24:47
【问题描述】:
我在 Colab 中使用 gspread 打开了一个 Google 表格
document = gc.open_by_url('https://docs.google.com/myspreadsheet')
sheet = elem.worksheet('Sheet1')
data = sheet.get_all_values()
df = pd.DataFrame(data)
文档包含元素数据,打印的 head() 如下所示:
0 1 ... 26 27
0 AtomicNumber Element ... NumberofShells NumberofValence
1 1 Hydrogen ... 1 1
2 2 Helium ... 1
3 3 Lithium ... 2 1
4 4 Beryllium ... 2 2
我遇到的问题是,当我尝试按标题引用时,例如:
df.plot(x = 'AtomicNumber', y= 'AtomicMass', kind = 'scatter')
我得到一个错误。我也试过:
df.plot(x = df.AtomicNumber, y= df.AtomicMass, kind = 'scatter')
和
df.plot(x = df['AtomicNumber'], y= df['AtomicMass'], kind = 'scatter')
但我也没有快乐。除非我像这样使用列引用:
df.plot(x = 0, y= 17, kind = 'scatter')
我什么也得不到。如果我必须继续引用 .csv 文件来确定我需要哪个列引用,它会很快变得很累!!
最后,当我打印时:
df.columns.values
我明白了:
array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16,
17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27])
我似乎无法不明白这一点 - 即使我尝试创建一个包含 df bar row index 0 每一行的新数据框
我对此很陌生,所以我确信它很简单,但我陷入了僵局......帮助!
【问题讨论】:
标签: python pandas matplotlib google-colaboratory gspread