首页 > 解决方案 > 在 Panda Python 中删除行中的非数字

问题描述

我正在尝试删除或替换列中不是数字的所有单元格。

我使用了下面的代码:

if  file[[Coluna_Vaos]] is not float() or int():
ColVao = file[[Coluna_Vaos]].replace(**"-" or "!"**, np.NaN) 

但我必须展示我不想要的每一种类型。如果存在一个包含除数字之外的所有事物的变量,那将很有用。

恢复:我想删除该行上不是数字的所有内容。如果有人可以为其他示例提供解决方案,我将不胜感激,例如检查和撕裂是否是字符串之外的另一件事。

标签: pythonpandas

解决方案


您可以使用pd.to_numericwitherrors='coerce'然后替换 NaN 值或删除这些行。

df['newcol'] = pd.to_numeric(df['Coluna_Vaos'], errors='coerce')
df = df.dropna(subset=['Coluna_Vaos'])

# or
df['newcol'] = df['newcol'].fillna(0)

推荐阅读