在dataframe中,值不是数字,我想将其更改为某个数字

问题描述 投票:0回答:1
 column1  column2 column3   

 3        java     1  
 3        python   2  
 4         5       3

假设第二列不是数字在这种情况下,“ java”和“ python”不是数字所以我想将“ java”和“ python”更改为一些数字

例如:

df.loc[np.issubdtype(df['keyword'].dtype, np.number) == False,'keyword'] ='9'

如何进行此更改?

python numpy dataframe
1个回答
0
投票

我不清楚您想传达什么。但是,如果您只想替换数字的非数字值,则可以使用replace method

df['column2'].replace({'java':2, 'python':3}, inplace = True)

如果您不知道哪些行具有非数字值,则可以在列中创建所有非数字值的列表,然后为每个数字选择数字:

list_nn = [k for k in list(df['column2'].unique()) if not str(k).isdigit()]
© www.soinside.com 2019 - 2024. All rights reserved.