首页 > 解决方案 > 如何从 Pandas 列中的字符串中仅删除数字

问题描述

我是一名环境地质学家,我正在学习 Python/Pandas。我在 Pandas 中有一个分析数据的数据框,类似于下面的示例:

起始数据框

我只想从 Total_dl 中删除离开检测限的数字(带有 < 的数字)。这将是我正在寻找的最终数据框:

我正在寻找的最终数据框

由于该列是字符串,我不确定如何解析该列。任何帮助,将不胜感激。

谢谢

标签: pythonstringpandasdataframe

解决方案


以下应该可以解决问题:

import numpy as np


mask = df.Total_dll < 1.
df.loc[mask, 'Total_dll'] = np.nan

如果Total_dll是类型string,您可以尝试以下操作:

import numpy as np


df.str.startswith('<')
df.loc[df.Total_dll.str.startswith('<'), np.nan]

推荐阅读