首页 > 解决方案 > 如何从熊猫数据框中的列中删除文本

问题描述

我目前在 pandas 数据框中有数据,格式为:

parameter1  23432552
parameter2  23647324 this is another parameter value
parameter3  43874328 this value is a thing as well
parameter4  4.34e-03

有多个列具有相同形式的数据,因此我想运行一个命令,该命令将获取每个数值,剥离任何文本并将其转换为可用的浮点数。到目前为止,我已经使用了一些正则表达式来清理它,但我不知道有一种方法可以匹配任何给定的文本。任何帮助表示赞赏!

标签: pythonregexpandasdataframe

解决方案


这不是最简单的,但您可以提取包括数字.e-

给定:

>>> df
            0                                         1
0  parameter1                                  23432552
1  parameter2  23647324 this is another parameter value
2  parameter3    43874328 this value is a thing as well
3  parameter4                                  4.34e-03

就像是:

df['newcolumn'] = pd.to_numeric(df[1].str.extract('([-\.\de]+)'))

>>> df
            0                                         1     newcolumn
0  parameter1                                  23432552  2.343255e+07
1  parameter2  23647324 this is another parameter value  2.364732e+07
2  parameter3    43874328 this value is a thing as well  4.387433e+07
3  parameter4                                  4.34e-03  4.340000e-03

推荐阅读