gpt4 book ai didi

numpy - 用 np.nan 替换空字符串但得到 'NaN'

转载 作者:行者123 更新时间:2023-12-01 05:00:20 25 4
gpt4 key购买 nike

我试图用 np.nan 替换空字符串

但我得到了 None在细胞中,这有什么问题?

谢谢

df.replace('', np.nan)

enter image description here

最佳答案

您的数据一定有问题,而不是 Pandas 。看下面的例子:

>>> data = [['a', 'b', ''], ['', 'e', 'f']]
>>> df = pd.DataFrame(data)
>>> df
0 1 2
0 a b
1 e f

如果您尝试更换 ''np.nan在上面的例子中,你得到了想要的结果:
>>> df.replace('', np.nan)
0 1 2
0 a b NaN
1 NaN e f

但是,如果您的数据没有正确指定:
>>> data = [['a', 'b', None], [None, 'e', 'f']]
>>> df = pd.DataFrame(data)
>>> df
0 1 2
0 a b None
1 None e f
pandas无济于事,因为您的数据不包含空字符串,而是包含非指定值( None ):
>>> df.replace('', np.nan) 
0 1 2
0 a b None
1 None e f

但是,您仍有机会删除 None来自你的 table 。以下,虽然听起来很愚蠢,但应该仍然有效:
>>> df.replace(np.nan, np.nan)
0 1 2
0 a b NaN
1 NaN e f

没有原始数据很难说,但希望以上内容有所帮助。

关于numpy - 用 np.nan 替换空字符串但得到 'NaN',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33606946/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com