我有一个来自Pandas的DataFrame:

import pandas as pd
inp = [{'c1':10, 'c2':100}, {'c1':11,'c2':110}, {'c1':12,'c2':120}]
df = pd.DataFrame(inp)
print df

输出:
   c1   c2
0  10  100
1  11  110
2  12  120

现在,我要遍历该框架的行。对于每一行,我希望能够通过列名访问其元素(单元格中的值)。例如:
for row in df.rows:
   print row['c1'], row['c2']

Pandas 有可能这样做吗?

我找到了这个similar question。但这并不能给我我所需的答案。例如,建议在那里使用:
for date, row in df.T.iteritems():

或者
for row in df.iterrows():

但是我不明白row对象是什么以及如何使用它。

最佳答案

DataFrame.iterrows 是一个生成器,它同时生成索引和行(作为系列):

import pandas as pd

df = pd.DataFrame({'c1': [10, 11, 12], 'c2': [100, 110, 120]})

for index, row in df.iterrows():
    print(row['c1'], row['c2'])
10 100
11 110
12 120

关于python - 如何在Pandas中的DataFrame中的行上进行迭代,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10729210/

10-10 00:17
查看更多