在python中单独为特定数据类型执行任务

时间:2019-01-03 10:29:16

标签: python python-3.x pandas

我有一个像下面这样的数据框:

enter image description here

以下是构建此数据框的代码:

df = pd.DataFrame({'Id': ['A12', 'B18', 'C78'],
                   'Age': [55, 45, 58],
                   'Hobbies': ['Movies', 'Walking', 'Travelling'],
                   'Salary': [60000, 55000, 85000]})

我需要在循环中传递整个数据帧,在该循环中,仅对整数数据类型执行均值功能(在我的示例中为年龄和薪水),而其余数据类型保持原样。谁能帮助我解决这个问题?

1 个答案:

答案 0 :(得分:3)

select_dtypes + mean

选择数字序列,然后然后计算平均值:

res = df.select_dtypes(include=['number']).mean()

print(res)

# Age          52.666667
# Salary    66666.666667
# dtype: float64

要严格包含仅 int系列,以便排除float系列,可以使用:

res = df.select_dtypes(include=['int']).mean()