Python 在数据帧中按分组
我觉得我错过了一些非常简单的东西,有人能告诉我这个代码有什么问题吗 我尝试按性别分组,年龄>30岁,存活值=1 “Sex”是一个布尔值(1或0),如果这有区别的话Python 在数据帧中按分组,python,pandas,Python,Pandas,我觉得我错过了一些非常简单的东西,有人能告诉我这个代码有什么问题吗 我尝试按性别分组,年龄>30岁,存活值=1 “Sex”是一个布尔值(1或0),如果这有区别的话 data_r.groupby('Sex')([data_r.Age >30],[data_r.Survived == 1]).count() 这是投掷: “'DataFrameGroupBy'对象不可调用” 有什么想法吗?谢谢您需要先筛选,然后再分组 data_r[(data_r.Age>30) & (data_
data_r.groupby('Sex')([data_r.Age >30],[data_r.Survived == 1]).count()
这是投掷:
“'DataFrameGroupBy'对象不可调用”
有什么想法吗?谢谢您需要先筛选,然后再分组
data_r[(data_r.Age>30) & (data_r.Survived==1)].groupby('Sex').count()
您可以在分组之前进行筛选
data_r.query('Age > 30 and Survived == 1').groupby('Sex').count()
输出:
PassengerId Survived Pclass Name Age SibSp Parch Ticket Fare \
Sex
female 83 83 83 83 83 83 83 83 83
male 41 41 41 41 41 41 41 41 41
Cabin Embarked
Sex
female 47 81
male 25 41
Sex
female 83
male 41
dtype: int64
我想。。。我会使用大小,因为它更安全,计数不包括空值(NaN值)。请注意列中的这些不同值,这是由于NaN值造成的
data_r.query('Age > 30 and Survived == 1').groupby('Sex').size()
输出:
PassengerId Survived Pclass Name Age SibSp Parch Ticket Fare \
Sex
female 83 83 83 83 83 83 83 83 83
male 41 41 41 41 41 41 41 41 41
Cabin Embarked
Sex
female 47 81
male 25 41
Sex
female 83
male 41
dtype: int64
啊。谢谢你,斯科特!该size()确实有助于输出。在我添加之前,我在上面显示的网格中有多余的数字。完美的