💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在优快云上与你们相遇~💖
本博客的精华专栏:
【自动化测试】 【测试经验】 【人工智能】 【Python】
Sklearn 机器学习:特征提取中的字符串清理与数字转换
在机器学习建模过程中,我们经常会遇到混合格式的数据,尤其是包含 字符串+数字 的文本特征(如“¥123元”、“高(3.2分)”、“约50%”等),若不进行合理清洗与转换,将无法被模型有效利用。
本文将带你深入了解如何使用 Sklearn + Pandas 等工具,从原始字符串中提取数值特征,助力机器学习模型性能提升!
📌 一、应用场景举例
在实际项目中,以下场景非常常见:
- 电商价格字段:如
"¥123.00"
、"¥89元"
。 - 商品评分字段:如
"评分4.5分"
、"高(3.2分)"
。 - 折扣/百分比信息:如
"约50%"
、"优惠30%"
。 - 地理/温度类信息:如
"22℃"
、"东经120度"
。
这些特征的共同点是:带有无用符号、单位、前后缀,需清洗后转为数值,才能用于模型。
🔧 二、字符串转数值的常见方法
我们以 Pandas 的 Series
为例,介绍几种典型的字符串清理技巧。
2.1 正则表达式提取数字
import pandas as pd
s = pd.Series(["¥123.45", "89元", "100", "¥56.7"])
s_clean = s.str.extract