如何在Pandas数据框架中设置单元格值

  • Post category:Python

在Pandas数据框架中能够轻松地设置单元格值,下面我将详细介绍几种不同的方法。

1. loc/iloc方法

我们可以利用索引属性 loc 或 iloc 来以行索引和列索引的方式选取数据,并给选中的单元格赋值。

import pandas as pd

# 创建一个数据框架
df = pd.DataFrame({'name': ['Alice', 'Bob', 'Charlie', 'David'],
                   'age': [25, 32, 18, 47],
                   'score': [93, 79, 85, 82]})

# 利用 loc 方法设置单元格值
df.loc[2, 'score'] = 90
# 利用 iloc 方法设置单元格值
df.iloc[3, 2] = 85

print(df)

输出结果为:

   name  age  score
0  Alice   25     93
1    Bob   32     79
2   Charlie  18     90
3   David   47     85

2. at/iat方法

如果只需要设置单个单元格的值,可以使用 at 或 iat 方法。

# 利用 at 方法设置单点值
df.at[0, 'score'] = 100
# 利用 iat 方法设置单点值
df.iat[1, 2] = 80

print(df)

输出结果为:

   name  age  score
0  Alice   25    100
1    Bob   32     80
2   Charlie  18     90
3   David   47     85

3. 使用条件选取

我们也可以使用条件选取的方式来设置单元格的值。

# 利用条件选取的方式设置单元格值
df.loc[df['name'] == 'Charlie', 'age'] = 19
df.loc[df['score'] >= 90, 'score'] = 95

print(df)

输出结果为:

       name  age  score
0     Alice   25     95
1       Bob   32     80
2   Charlie   19     95
3     David   47     85

以上三种方法是最常用的设置单元格值的方式,具体使用方法要根据实际场景灵活选择。