Python如何在应该只是数字的列中替换非数字值

Python如何在应该只是数字的列中替换非数字值

目标是在 ["campaignid"] 列中找到所有非数值,并为它们分配一个数值。


dataframe:



2790    8/31/2019   143679198                   

2791    8/10/2019   143679198       

2792    8/10/2019   brand           

2793    8/10/2019   brand   

2794    8/10/2019   143679198

2795    8/10/2019   site

2796    8/10/2019   site


我的尝试


cw= cw["campaignid"].replace(cw["campaignid"]({'brand': "283494005"}), inplace=True)


#error: NoneType' object is not subscriptable




# Tried with for loop as well, but isnt replacing it.


count= 0


for x in cw.campaignid:


    if x == "brand":

        x = "283494005"

        print(f"brand now is.. {x}")



    elif x == "site":

        x = "283494007"

        print(f"site now is.. {x}")



    else:

        count+= 1


期望的结果

只有数字值


2790    8/31/2019   143679198                   

2791    8/10/2019   143679198       

2792    8/10/2019   283494005

2793    8/10/2019   283494005

2794    8/10/2019   143679198

2795    8/10/2019   283494007

2796    8/10/2019   283494007


慕码人2483693
浏览 180回答 1
1回答

达令说

你可以试试:cw["campaignid"]=cw["campaignid"].replace({'brand':283494005,'site':283494007}).astype(int)
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python