我使用了一个名为specialty
的pandas列,它看起来像这样:
0 1,5
1 1
2 1
3 1
4 1
5 1,5
6 3
7 3
8 1
9 1,3
10 1
11 1,2,4,6
12 1,5
13 6
14 3
并创建了一个新列,该列将具有多个项的值转换为单个项,如下所示:
df['spec_area'] = df['specialty'].replace({
'1,2' : 2,
'1,3' : 3,
'1,4' : 4,
'1,5' : 5,
'1,6' : 6,
'2,6' : 2,
'3,6' : 3,
'1,2,3': 3,
'1,2,6' : 2,
'1,3,6' : 3,
'1,2,3' : 3,
'1,2,4' : 4,
'1,2,4,6' : 4,
'1,2,5' : 5
})
当我运行df['spec_area'].value_counts()
时,我得到:
我不明白为什么2-6里有两个人。
1条答案
按热度按时间9avjhtql1#
你的列是
string
列,你用integer
替换了dict,这就是为什么value_counts
返回两个值,一个是数字,另一个是字符串,而不是:执行: