【发布时间】:2018-04-26 13:27:25
【问题描述】:
我的数据集中的某些列缺少表示为 None(Nonetype,不是字符串)的值。其他一些缺失值表示为“N/A”或“No”。我希望能够在下面的方法中处理这些缺失值。
df.loc[df.col1.isin('None', 'Yes', 'No'), col1] = 'N/A'
现在我的问题是,None 是一个值而不是字符串,所以我不能将 none 用作“None”。我在某处读过我们可以将 none 值转换为字符串“None”。
任何人都可以给我任何线索如何去做吗?
注1:
如果我运行下面的代码,只是为了解释清楚:
df.col1.unique()
我得到这个输出:
array([None, 'No', 'Yes'], dtype=object)
注2:
我知道我可以使用isnull() 处理缺失值或无值,但在这种情况下我需要使用.isin() 方法
示例数据框:
f = {'name': ['john', 'tom', None, 'rock', 'dick'], 'DoB': [None, '01/02/2012', '11/22/2014', '11/22/2014', '09/25/2016'], 'Address': ['NY', 'NJ', 'PA', 'NY', None]}
df1 = pd.DataFrame(data = f)
当你运行下面的代码时,你会看到 None 作为一个值。
df1.Address.unique()
output: array(['NY', 'NJ', 'PA', None], dtype=object)
我希望 None 显示为“None”
【问题讨论】:
-
你能给出一个输入数据框和你的预期输出吗?我试着回答你的问题,但不确定你真正需要什么。
-
更新了我帖子底部的示例数据框。
-
您能否提供更多关于您为什么要这样做的背景信息?导出方法(例如
df.to_csv)具有na_rep参数,可以将所有空/缺失数据更改为您想要的任何字符串。
标签: python pandas missing-data nonetype