python - 将包含字典和字符串值的列表转换为数字数据框列
问题描述
我有一个列表(List_1),其中包含来自键值对的值和一些字符串。该列表如下所示:
List_1 = [dict_values([2]), dict_values([54]),dict_values([111]), 'Blah', 'Blah']
我想创建一个名为df['List_1']的新数据框列,该列由List_1中的值填充。然后我想将df['List_1']转换为数字数据类型,并强制 NA 变为 NaN。
我试过这个:
df['List_1'] = List_1
df['List_1']= pd.to_numeric(df['List_1'], errors='coerce')
我的预期结果是让 NA 变成 NaN,并且 dict_values 变成数字,但是我的方法导致整个列变成 NaN。
解决方案
我使用了您的方法,效果很好,但是您可以使用:
import numpy as np
df.replace('NA', np.nan)
您的数据集中对 NA 的定义可能有问题吗?Pandas 不处理缺失值,例如 R 或用于数据分析的其他语言/包,因此这可能是问题所在。
推荐阅读
- rust - 如何使用向量及其“rev”在 Rust 中创建 2 个 zip?
- spring - SpringBoot:如何在插入/选择查询中添加额外的字段
- c++ - 构造函数中的 C++ 模板
- arrays - reactjs中如何改变特定对象的顺序
- unix - 我可以在使用 wget 选择要下载的文件时使用条件“或”语句吗
- java - 使用属性 Spring Boot 中的 int 值
- sql - SQL 逻辑检查是否有任何相关客户失败
- laravel - Cloudways 启用清漆缓存导致 419 页面在登录时在 laravel 中过期
- django - 如何保存或存储用户在我的 django 表单中上传的文档?
- python - 如何正确计算预定义关键点的描述符?