pandas 遍历Dataframe

本文介绍了Pandas中用于遍历DataFrame的三种方法:iterrows()、itertuples()和iteritems()。通过示例展示了如何按行和按列访问数据,强调了效率和使用场景。对于大型数据集,itertuples()比iterrows()更高效。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  • 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])  # 输出各列
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值