脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|shell|

服务器之家 - 脚本之家 - Python - Python pandas遍历行数据的2种方法小结

Python pandas遍历行数据的2种方法小结

2024-04-01 10:13数据人阿多 Python

pandas在数据处理过程中,除了对整列字段进行处理之外,有时还需求对每一行进行遍历,本文就来介绍Python pandas遍历行数据的2种方法小结,感兴趣的可以了解一下

背景

pandas在数据处理过程中,除了对整列字段进行处理之外,有时还需求对每一行进行遍历,来处理每行的数据。本篇文章介绍 2 种方法,来遍历pandas 的行数据

小编环境

import sys
print('python 版本:',sys.version.split('|')[0])   
#python 版本: 3.11.5
import pandas as pd
print(pd.__version__)
#2.1.0

演示数据

Python pandas遍历行数据的2种方法小结

方法1

pandas.DataFrame.itertuples:返回的是一个命名元组
官方文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.itertuples.html

1. 无任何参数

import pandas as pd
data=pd.read_excel("data.xlsx")

for row in data.itertuples():
    print("row:",row,"\n")
    #row: Pandas(Index=0, 序号=1, 分割字符='1&1&1', 固定宽度='111') 
    
    print("type(row):",type(row),"\n")
    #type(row): <class 'pandas.core.frame.Pandas'> 
    
    print("row.序号:",row.序号)
    #row.序号: 1
    
    print("row.分割字符:",row.分割字符)
    #row.分割字符: 1&1&1
    
    print("row.固定宽度:",row.固定宽度)
    #row.固定宽度: 111
    
    break

2. 忽略掉索引

import pandas as pd
data=pd.read_excel("data.xlsx")

for row in data.itertuples(index=False):  #忽律索引
    print("row:",row,"\n")
    #row: Pandas(序号=1, 分割字符='1&1&1', 固定宽度='111') 
    
    print("type(row):",type(row),"\n")
    #type(row): <class 'pandas.core.frame.Pandas'> 
    
    print("row.序号:",row.序号)
    #row.序号: 1
    
    print("row.分割字符:",row.分割字符)
    #row.分割字符: 1&1&1
    
    print("row.固定宽度:",row.固定宽度)
    #row.固定宽度: 111
    
    break

3. 对命名元组起别名

import pandas as pd
data=pd.read_excel("data.xlsx")

for row in data.itertuples(index=False,name="data"):
    print("row:",row,"\n")
    #row: data(序号=1, 分割字符='1&1&1', 固定宽度='111')  
    
    print("type(row):",type(row),"\n")
    #type(row): <class 'pandas.core.frame.data'> 
    
    print("row.序号:",row.序号)
    #row.序号: 1
    
    print("row.分割字符:",row.分割字符)
    #row.分割字符: 1&1&1
    
    print("row.固定宽度:",row.固定宽度)
    #row.固定宽度: 111
    
    break

方法2

pandas.DataFrame.iterrows:返回 (index, Series) 元组
官方文档:https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.iterrows.html

import pandas as pd
data=pd.read_excel("data.xlsx")

for index,row in data.iterrows():
    print("index:",index,"\n")
    #index: 0
    
    print("row:",row,"\n")
    #row: 序号          1
    #分割字符    1&1&1
    #固定宽度      111
    #Name: 0, dtype: object
    
    print("type(row):",type(row),"\n")
    #type(row): <class 'pandas.core.series.Series'> 
    
    print("row['序号']:",row['序号'])
    #row['序号']: 1
    
    print("row['分割字符']:",row['分割字符'])
    #row['分割字符']: 1&1&1
    
    print("row['固定宽度']:",row['固定宽度'])
    #row['固定宽度']: 111
    
    break

到此这篇关于Python pandas遍历行数据的2种方法小姐的文章就介绍到这了,更多相关pandas遍历行内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家! 

原文链接:https://blog.csdn.net/zhangtingduo/article/details/136505201

延伸 · 阅读

精彩推荐