python - 缺少数据的 Pandas 分类变量
问题描述
假设我有这个数据框:
dfdic = {"col1": ['azul', 'amarillo', 'amarillo', np.nan], "col2": [4, 5, 8, 10]}
df = pd.DataFrame(dfdic)
我想将该col1
字段转换为虚拟变量。我可以这样做:
pd.get_dummies(df, columns=['col1']).head()
这使
col2 col1_amarillo col1_azul
0 4.0 0 1
1 5.0 1 0
2 8.0 1 0
3 10 0 0
虚拟变量中的 NaNcol1
已替换为两个零。这是有道理的,因为它表示该实例不属于任何类别。但是,我怎样才能用 NaN 替换那些零,所以我可以
col2 col1_amarillo col1_azul
0 4.0 0 1
1 5.0 1 0
2 8.0 1 0
3 10 NaN NaN
解决方案
推荐阅读
- php - Symfony 4.3 验证不起作用 - 甚至自动
- sqlite - 当我尝试检索已排序的行时,数据库返回空列表
- c# - 是否可以在不直接使用 Console.WriteLine 的情况下插入字符串?
- ethereum - 方法 txpool_inspect 不存在/不可用
- python - 在 Google Colab 上的 Spark 中加载 tsv 文件时出错
- python - 从内部网站(即工作)抓取时是否有 python 函数或属性进行身份验证
- html - 整页 div 覆盖模糊未显示
- excel - 尝试制作一个程序,该程序从多个工作簿中获取多个电子表格并将它们与其他工作簿中的等价物合并
- javascript - 如何修复此异步/等待功能?
- apache-spark - 如何在 Java 中使用 Spark 读取复杂的数据类型(如 JSON 数组)并加载到 Hive 表中