iterrows(): 按行遍历,将DataFrame的每一行迭代为(index, Series)对,可以通过row[name]对元素进行访问。itertuples(): 按行遍历,将DataFrame的每一行迭代为元祖,可以通过row[name]对元素进行访问,比iterrows()效率高。iteritems():按列遍历,将DataFrame的每一列迭代为(列名, Series)对,可以通过row[index]对元素进行访问。
示例数据
import pandas
as pd
inp
= [{'c1':10, 'c2':100}, {'c1':11, 'c2':110}, {'c1':12, 'c2':123}]
df
= pd
.DataFrame
(inp
)
print(df
)
c1 c2
0 10 100
1 11 110
2 12 123
按行遍历iterrows():
import pandas
as pd
inp
= [{'c1': 10, 'c2': 100}, {'c1': 11, 'c2': 110}, {'c1': 12, 'c2': 123}]
df
= pd
.DataFrame
(inp
)
for index
, row
in df
.iterrows
():
print(index
,row
['c1'], row
['c2'])
pass
0 10 100
1 11 110
2 12 123
按行遍历itertuples():
import pandas
as pd
inp
= [{'c1': 10, 'c2': 100}, {'c1': 11, 'c2': 110}, {'c1': 12, 'c2': 123}]
df
= pd
.DataFrame
(inp
)
for row
in df
.itertuples
():
print(getattr(row
, 'c1'), getattr(row
, 'c2'))
按列遍历iteritems():
import pandas
as pd
inp
= [{'c1': 10, 'c2': 100}, {'c1': 11, 'c2': 110}, {'c1': 12, 'c2': 123}]
df
= pd
.DataFrame
(inp
)
for index
, row
in df
.iteritems
():
print(index
)
print(row
[0], row
[1], row
[2])