df.iterrows()和df.columns超简单详细使用

pandas库中,DataFrame.iterrows()DataFrame.columns 是两个非常常用的方法和属性,分别用于迭代数据行和获取列名称。

1. df.iterrows()

  • 作用:逐行迭代DataFrame,返回每一行的索引和对应的行数据(作为一个Series)。
  • 特点:适用于需要对每一行进行逐行处理的场景。
  • 注意事项
    • 使用iterrows()效率较低,不适合处理大规模数据。
    • 返回的行是一个副本,对它的修改不会影响原DataFrame。

示例代码

import pandas as pd

# 创建示例DataFrame
data = {
    'Name': ['Alice', 'Bob', 'Charlie'],
    'Age': [25, 30, 35],
    'City': ['New York', 'Los Angeles', 'Chicago']
}
df = pd.DataFrame(data)

# 使用 iterrows() 迭代每一行
for index, row in df.iterrows():
    print(f"Index: {index}, Name: {row['Name']}, Age: {row['Age']}, City: {row['City']}")

输出

Index: 0, Name: Alice, Age: 25, City: New York
Index: 1, Name: Bob, Age: 30, City: Los Angeles
Index: 2, Name: Charlie, Age: 35, City: Chicago

2. df.columns

  • 作用:返回DataFrame的列名,类型为pandas.Index
  • 特点:可以用来查看或操作列名。
  • 常见操作
    • 获取列名列表:list(df.columns)
    • 修改列名:df.columns = ['new_col1', 'new_col2', 'new_col3']

示例代码

# 查看列名
print("列名:", df.columns)

# 将列名转为列表
columns_list = list(df.columns)
print("列名列表:", columns_list)

# 修改列名
df.columns = ['Full Name', 'Age (Years)', 'Location']
print("修改后的DataFrame:\n", df)

输出

列名: Index(['Name', 'Age', 'City'], dtype='object')
列名列表: ['Name', 'Age', 'City']
修改后的DataFrame:
     Full Name  Age (Years)       Location
0      Alice          25     New York
1       Bob            30 Los Angeles
2    Charlie          35      Chicago

总结

  • iterrows() 用于逐行迭代,返回索引和行数据。
  • columns 是查看和操作列名的重要属性。

如果需要高效处理数据,推荐使用矢量化操作,而不是逐行迭代。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值