python - 使用 preprocessing.LabelEncoder() 将许多特征的二进制值转换为数值
问题描述
我知道我可以使用下面的代码将所有功能的二进制数转换为数值,但是如何在不使用feature = le.fit_transform(list(data["feature"]
每个功能的情况下将我的所有功能更改为数值?有没有另一种更简洁的写法?
data = pd.read_csv("car.data")
le = preprocessing.LabelEncoder()
buying = le.fit_transform(list(data["buying"]
maint = le.fit_transform(list(data["maint"]
door = le.fit_transform(list(data["door"]
persons = le.fit_transform(list(data["persons"]
lug_boot = le.fit_transform(list(data["lug_boot"]
safety = le.fit_transform(list(data["safety"]
解决方案
可能最简单的方法是使用字典理解。
data = pd.read_csv("car.data")
le = preprocessing.LabelEncoder()
result = {
label: le.fit_transform(list(data[label]))
for label in (
"buying", "maint", "door", "persons",
"lug_boot", "safety"
)
}
推荐阅读
- java - 使用 RequestBuilder 发布文件时出错,403 Forbidden cloudflare
- express - 中间件在上一页不起作用
- excel - 从单元格中提取最后一个子字符串
- postgresql - Liferay 7,Hikari-Pool 连接不可用错误,发生在生产环境中,但不在预生产环境中
- discord - Discord.js 在线会员数量不会立即更新
- python - 将VS代码连接到Jupyter笔记本后,如何在Jupyter笔记本中修复“导入win32api时DLL加载失败”?
- geometry - 确定多边形周围的路径方向而不转弯
- javascript - 如何在 Vue CLI 4 和 Electron 项目中保护环境变量中的 API 密钥
- c++ - 安装 LLVM-12 后旧的 clang++ 无法编译?
- python - 将文本文件内容添加到列表列表中