我想知道,如何在Python中合并分类变量的级别?
我有以下数据集:
dataset['Reason'].value_counts().head(5).
Reason Count
0 339
7 125
11 124
3 82
0 65
现在,我想合并的第一次出现和最后一次出现,以便输出看起来像:
dataset['Reason'].value_counts().head(5)
Reason Count
0 404
7 125
11 124
3 82
2 52
为了弄清楚原因,我不得不分割一个字符串,这可能导致了reason
列中的各个级别。
我尝试使用loc
函数,但是我想知道是否有更聪明的方法可以做到这一点:
dataset.loc[dataset['Reason'] == '0' , ['Reason']] = 'On request'
dataset.loc[dataset['Reason'] == '0 ' , ['Reason']] = 'On request'
谢谢迈克尔。
答案 0 :(得分:0)
如果所有值都是字符串,则像@ anky_91一样使用Series.str.strip
:
dataset['Reason'].str.strip().value_counts().head(5)
如果某些值是数字,则首先由Series.astype
强制转换为string
:
dataset['Reason'].astype(str).str.strip().value_counts().head(5)