python - concat : bug or intentional behavior? 后 Pandas None 到 NaN

标签 python pandas

我有一个像这样的初始 DataFrame:

d = pd.DataFrame({"value":(None,)})

如果我在其上使用 pd.concat,生成的 DataFrame 会将 None 转换为 NaN:

In [14]: pd.concat([d], axis=0, ignore_index=True)
Out[14]:
  value
0   NaN

如果我有一个包含混合文本/None 的 DataFrame,则不会发生这种情况:

In [15]: d2 = pd.DataFrame({"value":("a", None)})

In [16]: pd.concat([d2], axis=0, ignore_index=True)
Out[16]:
  value
0     a
1  None

我无法理解这种行为。这是一个错误,还是背后有一些特殊的原因?

最佳答案

我认为这是一个错误。解决方法如下:

import numpy as np
...
d2 = d2.apply(lambda v: v if v is not None else np.nan)

关于python - concat : bug or intentional behavior? 后 Pandas None 到 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35138903/

相关文章:

python - 合并两个嵌套列表并删除重复项

python - 列表与列表列表的第一个元素之间的交集

python - 从数据框中的数组制作散点图

python - kmeans 聚类之前的 Scipy 白化

python Pandas : Split string into multiple columns and extract data for column from split parameter

python - 在 Pandas 系列中查找元素的索引

python - 在 telegram.org API 中响应 new_session_created 消息

python - 名称错误 : global name 'CV_GUI_NORMAL' is not defined

python - 如何组合我的数据框的列来创建一个日期时间列,我可以将其用作索引?

python - 将 Pandas 数据框转换为字典时,日期从字符串更改为日期时间对象