在Python中,可以使用pandas库来按列值条件对选定的行进行分组,然后转换另一列。以下是一个示例代码:
import pandas as pd
# 创建示例数据
data = {'Name': ['Tom', 'Nick', 'John', 'Tom', 'Nick'],
'Age': [20, 25, 30, 35, 40],
'City': ['London', 'New York', 'Paris', 'London', 'New York']}
df = pd.DataFrame(data)
# 按列值条件分组并转换另一列
df['Average Age'] = df.groupby('Name')['Age'].transform('mean')
# 显示结果
print(df)
输出结果如下:
Name Age City Average Age
0 Tom 20 London 27.5
1 Nick 25 New York 32.5
2 John 30 Paris 30.0
3 Tom 35 London 27.5
4 Nick 40 New York 32.5
在上述示例中,我们首先创建了一个包含姓名、年龄和城市的示例数据。然后,我们使用groupby
方法按照姓名对数据进行分组,并使用transform
方法计算每个姓名对应的平均年龄。最后,我们将计算结果添加到原始数据框中的新列中。