【问题标题】:iterrows cannot iterate over DataFrame Eror: touple object has no attribute "A"iterrows 无法遍历 DataFrame 错误:元组对象没有属性“A”
【发布时间】:2017-06-26 09:53:28
【问题描述】:

当我尝试迭代数据框时,dtype 会以某种方式发生变化。

dates = pd.date_range('20130101',periods=6)
df = pd.DataFrame(np.random.randn(6,4),index=dates,columns=list('ABCD'))

df 
                A           B           C         D
2013-01-01  -1.328046   -0.545127   -0.033153   1.190336
2013-01-02  -0.549147   0.447161    1.179931    0.397521
2013-01-03  -0.106707   -0.327574   -0.933817   -1.032949
2013-01-04  -0.519988   -1.007374   -0.794482   -1.757222
2013-01-05  -0.739735   1.220599    -1.387994   -0.116178
2013-01-06  0.262876    -0.679471   -0.568768   -0.277880

现在当我尝试遍历行时

for row in df.iterrows():
    print (row.A)

我收到错误

AttributeError: 'tuple' object has no attribute 'A'

我当前的 pandas 版本是 0.20.1

谢谢。

【问题讨论】:

  • 请阅读docs,它返回索引的元组,并且每一行(作为Series)因此出现错误,您想为row in df.iterrows(): print (row[1].A)索引第二个元素跨度>

标签: python pandas dataframe


【解决方案1】:

itterrows 创建一个元组,所以试试这个:

for pos, row in df.iterrows():
    print (row.A)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-28
    • 1970-01-01
    • 2021-01-21
    • 1970-01-01
    • 1970-01-01
    • 2017-01-15
    • 2013-04-28
    • 1970-01-01
    相关资源
    最近更新 更多