跳转至

🔥AI副业赚钱星球

点击下面图片查看

郭震AI

2

编辑日期: 2024-11-28 文章阅读:

小技巧2: 使用 replace 和正则清洗数据

Pandas 的强项在于数据分析,自然就少不了数据清洗。 今天学习一个快速清洗数据的小技巧,在某列上使用 replace 方法和正则,快速完成值的清洗。 源数据:

d = {"customer": ["A", "B", "C", "D"],
"sales":[1100, "950.5RMB", "$400", " $1250.75"]}

df = pd.DataFrame(d)
df

打印结果:

customer    sales
0   A   1100
1   B   950.5RMB
2   C   $400
3   D   $1250.75

看到 sales 列的值,有整型,浮点型+RMB后变为字符串型,还有美元+整型,美元+浮点型。

我们的目标:清洗掉 RMB$ 符号,转化这一列为浮点型。

一行代码搞定:(点击代码区域,向右滑动,查看完整代码)

df["sales"] = df["sales"].replace("[$,RMB]","", regex = True).astype("float")

使用正则替换,将要替换的字符放到列表中 [$,RMB],替换为空字符,即 ""

最后使用 astype 转为 float

打印结果:

customer    sales
0   A   1100.00
1   B   950.50
2   C   400.00
3   D   1250.75

如果不放心,再检查下值的类型:

df["sales"].apply(type)

打印结果:

0    <class 'float'>
1    <class 'float'>
2    <class 'float'>
3    <class 'float'>
京ICP备20031037号-1