无涯教程-DataFrame.iterrows函数

87 阅读1分钟

如果要遍历DataFrame以对每行执行一些操作,则可以在Pandas中使用iterrows()函数。Pandas使用三个函数来迭代DataFrame的行,即iterrows(),iteritems()和itertuples()。

迭代行:

iterrows()负责遍历DataFrame的每一行。它返回一个迭代器,该迭代器包含作为Series的每一行的索引和数据。

此函数返回每个索引值以及包含每一行数据的序列。

  • iterrows()       -  用于将行作为(index,Series)对进行迭代。
  • iteritems()      -  用于迭代(key,value)对。
  • itertuples()     -  用于将行作为命名元组进行迭代。

Yields:

  • index   -  返回行的索引和MultiIndex的元组。
  • data     - 以行的形式返回该行的数据。
  • it           - 返回在框架的行上进行迭代的生成器。

例1

import pandas as pd
import numpy as np

info = pd.DataFrame(np.random.randn(4,2),columns = [col1,col2]) for row_index,row in info.iterrows(): print (row_index,row)

输出

0   name        John
     degree      B.Tech
score         90
Name: 0, dtype: object

1 name Learnfk degree B.Com score 40 Name: 1, dtype: object

2 name Alexander degree M.Com score 80 Name: 2, dtype: object

3 name William degree M.Tech score 98 Name: 3, dtype: object

例2

# importing pandas module  
import pandas as pd  

# 从csv文件制作数据框 data = pd.read_csv("aa.csv")

for i, j in data.iterrows(): print(i, j) print()

输出

0           Name                  Hire Date     Salary            Leaves Remaining    0   John Idle                  03/15/14     50...
Name: 0, dtype: object

1 Name Hire Date Salary Leaves Remaining 1 Learnfk Gilliam 06/01/15 65000... Name: 1, dtype: object

2 Name Hire Date Salary Leaves Remaining 2 Parker Chapman 05/12/14 45000.0 ... Name: 2, dtype: object

3 Name Hire Date Salary Leaves Remaining 3 Jones Palin 11/01/13 700... Name: 3, dtype: object

4 Name Hire Date Salary Leaves Remaining 4 Terry Gilliam 08/12/14 4800... Name: 4, dtype: object

5 Name Hire Date Salary Leaves Remaining 5 Michael Palin 05/23/13 66000... Name: 5, dtype: object

参考链接

www.learnfk.com/pandas/pand…