python - Pandas - 替换缺失值并同时根据列添加前缀或后缀?
问题描述
我正在尝试为机器学习目的预处理一些数据。我目前正在尝试清理一些 NaN 值并将它们替换为“未知”和基于列名的前缀或后缀。
原因是当我使用一种热编码时,我不能将多个具有相同名称的列输入 xgboost。
所以我有以下
df = df.apply(lambda x: x.replace(np.nan, 'unknown'))
我想用'unknown_columname'替换df中的所有NaN实例。有没有简单或简单的方法来做到这一点?
解决方案
试试df = df.apply(lambda x: x.replace(np.nan, f'unknown_{x.name}'))
。
您也可以使用df = df.apply(lambda x: x.fillna(f'unknown_{x.name}')
.
推荐阅读
- c# - 自定义路由在 ASP.NET MVC 应用程序 C# 中给出错误 404
- c++ - Dijkstra 算法运行缓慢
- swiftui - 是否可以从视图绘制线到另一个视图
- php - 我需要在哪里放置 phpunit 的钩子?
- spring - Spring Boot OAUTH2 作用域的不同 uri
- javascript - 使用 Axios 向后端发送 MSAL 令牌
- flutter - Flutter Driver 从滚动选择器中选择
- python - 使用 Panda 的 Apply 函数在使用 Python 的 Google Places API 查询中循环遍历坐标列表 (csv)
- c - 使用c中的scanf将字符输入到枚举变量中
- html - 如何制作一个将表情符号上传到输入框的按钮?