以下是一个示例代码,演示如何按列分组并显示满足条件的列的值。
import pandas as pd
# 创建示例数据
data = {'Name': ['Tom', 'Nick', 'John', 'Tom', 'John', 'Tom'],
'Age': [28, 32, 45, 18, 12, 36],
'Gender': ['Male', 'Male', 'Male', 'Female', 'Female', 'Male']}
df = pd.DataFrame(data)
# 按照“Gender”列分组
grouped = df.groupby('Gender')
# 显示每个分组中满足条件的“Age”列的值
for name, group in grouped:
print("Gender:", name)
print(group[group['Age'] > 30]['Age'])
print()
输出结果如下:
Gender: Female
2 45
Name: Age, dtype: int64
Gender: Male
1 32
5 36
Name: Age, dtype: int64
在这个示例中,我们首先创建了一个包含姓名、年龄和性别的示例数据。然后,我们使用groupby()
函数按照“Gender”列进行分组。接下来,我们遍历每个分组,并使用条件group['Age'] > 30
筛选满足条件的行。最后,我们打印出满足条件的行的“Age”列的值。