【发布时间】:2022-01-19 23:43:12
【问题描述】:
我有一个大型数据框,它当前同时包含“?”、“??”和我正在尝试删除的 NaN 值。我想将列重新定义为布尔值,以查看它们是否包含“?”、“??”或 NaN。
我目前的方法涉及克隆数据框的不同列,具体取决于它们是否仅包含“?”,仅包含“??”或者只是 NaN 值并分别迭代列 col 以更改值(例如:df[col] = df[col].isnull()),最后再次将它们合并在一起。
有更简单的方法吗?
【问题讨论】:
-
你说的删除是什么意思?你的意思是删除包含 ?,?? 的行或 NaN 或将它们更改为其他内容?
-
使用包含要替换的值对以及要替换它们的内容的字典替换问号字符串。 df.replace({'?':'', '??':''}, inplace=True) 您需要具体说明要对 NaN 做什么。是否要删除行或列?是否要将 NaN 替换为填充值?
-
请提供足够的代码,以便其他人更好地理解或重现问题。