我有一个Pandas数据帧,其中我感兴趣的特性是Tenure
(一个预测器)和一个名为Churn
的列(“0”和“1”的标签字符串)。你知道吗
col1 col2 ... Tenure ... Churn
val_1 ... 5 0
val_i ... ... label_i
val_n ... 36 1
现在我想用这些值生成一个数据帧:
Tenure Churned Churn_Rate
5 51 15.31
... ... ...
36 16 21.98
数据按Tenure
分组,Churned
是值“1”的频率,Churn_Rate
是每个Tenure
值出现这种情况的百分比。你知道吗
到目前为止,这是我所做的,但我得到一个元组代替。你知道吗
churn_per_tenure = grs_df_main.groupby(['Tenure']).apply(lambda x: ((x['Churn'] == '1').sum(), x['Churn'].count()))
另外,如何按:Tenure
、Churned
或Churn_Rate
对输出进行排序?你知道吗
用途:
如果只需要
rate
列,可以使用syntactig sugar-groupby
byboolean mask
withSeries
grs_df_main['Tenure']
和aggregatemean
:对于所有列,使用^{} 和
lambda
函数:如果还需要
count
列删除pop
函数:相关问题 更多 >
编程相关推荐