以下是一个示例代码,演示了如何按列分组,并根据计数更新另一列的行。
import pandas as pd
# 创建示例数据
data = {'Name': ['Tom', 'Nick', 'John', 'Tom', 'Tom', 'Nick'],
'Age': [20, 21, 22, 23, 24, 25]}
df = pd.DataFrame(data)
# 按列分组并计数
grouped = df.groupby('Name').count()
# 遍历每行,根据计数更新另一列的行
for index, row in grouped.iterrows():
name = index
count = row['Age']
df.loc[df['Name'] == name, 'Age'] = count
print(df)
输出结果为:
Name Age
0 Tom 3
1 Nick 2
2 John 1
3 Tom 3
4 Tom 3
5 Nick 2
在这个示例中,我们首先创建了一个包含姓名和年龄的DataFrame。然后,我们使用groupby
方法按照姓名进行分组,并计算每个姓名的数量。接下来,我们遍历每行,获取姓名和数量的值,并使用loc
方法根据姓名更新年龄列的值。最后,我们打印出更新后的DataFrame。