如何在Pandas中的Data Frame中的行上进行迭代?
0 265
1

我有一个DataFrame来自Pandas的:

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有可能这样做吗?

我发现了类似的问题。但这并不能给我我所需的答案。例如,建议在那里使用:

for date, row in df.T.iteritems():

或者

for row in df.iterrows():

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

收藏
2021-02-14 16:33 更新 han •  277
共 1 个回答
高赞 时间
0

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

收藏
2021-02-14 16:35 更新 玩手机的豆浆 •  689