我有一个“0”的数据帧,如下所示:

df = pd.DataFrame({
    'WARNING':['4402,43527,0,7628,54337',4402,0,0,'0,1234,56437,76252',0,3602],
    'FAILED':[0,0,'5555,6753,0','4572,0,8764,8753',9876,0,'0,4579,7514']
})

我想从有多个值的字符串中删除零,这样结果df如下所示:
df = pd.DataFrame({
    'WARNING':['4402,43527,7628,54337',4402,0,0,'1234,56437,76252',0,3602],
    'FAILED':[0,0,'5555,6753','4572,8764,8753',9876,0,'4579,7514']
})

但是,单元格中有单个0的那些应该保持完整。我怎样才能做到这一点?

最佳答案

df = pd.DataFrame({
    'WARNING':['0,0786,1230,01234,0',4402,0,0,'0,1234,56437,76252',0,3602],
    'FAILED':[0,0,'5555,6753,0','4572,0,8764,8753',9876,0,'0,4579,7514']
})
df.apply(lambda x: x.str.strip('0,|,0')).replace(",0,", ",")

输出:
            WARNING            FAILED
0    786,1230,01234               NaN
1               NaN               NaN
2               NaN         5555,6753
3               NaN  4572,0,8764,8753
4  1234,56437,76252               NaN
5               NaN               NaN
6               NaN         4579,7514

关于python - 如何从字符串中删除0而不影响 Pandas 数据框中的其他单元格?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53344965/

10-11 02:21
查看更多