我在Pandasdf中有一个专栏,看起来像这样:
specialty
0 1
1 2,5
2 2
3 6
4 missing
5 1
6 3
7 1,3,4
8 4
9 1
我想将所有具有多个值的值转换为7
,并将所有“missing”转换为6。我知道我可以做到df['specialty'].replace({'missing':6})
。但不确定将多个值转换为7
输出如下:
specialty
0 1
1 7
2 2
3 6
4 6
5 1
6 3
7 7
8 4
9 1
我已经尝试了df['specialty'].str.contains(',') = 7
,但这给了
SyntaxError: cannot assign to function call
3条答案
按热度按时间c3frrgcw1#
使用
numpy.where
或numpy.select
:7rfyedvj2#
对
loc
使用布尔索引:输出:
您可能还想从真实的值(2+5 -〉7)计算:
或者:
flseospp3#
您可以用途: