python – 使用NaN添加两个系列
发布时间:2020-12-20 10:34:00 所属栏目:Python 来源:网络整理
导读:我正在研究“ Python For Data Analysis”,我不了解特定的功能.添加两个pandas系列对象将自动对齐索引数据,但如果一个对象不包含该索引,则返回为NaN.例如来自书: a = Series([35000,71000,16000,5000],index=['Ohio','Texas','Oregon','Utah'])b = Series([
我正在研究“
Python For Data Analysis”,我不了解特定的功能.添加两个pandas系列对象将自动对齐索引数据,但如果一个对象不包含该索引,则返回为NaN.例如来自书:
a = Series([35000,71000,16000,5000],index=['Ohio','Texas','Oregon','Utah']) b = Series([NaN,35000],index=['California','Ohio']) 结果: In [63]: a Out[63]: Ohio 35000 Texas 71000 Oregon 16000 Utah 5000 In [64]: b Out[64]: California NaN Texas 71000 Oregon 16000 Ohio 35000 当我把它们加在一起时,我得到了…… In [65]: a+b Out[65]: California NaN Ohio 70000 Oregon 32000 Texas 142000 Utah NaN 那么为什么犹他州的价值是NaN而不是500?似乎500 NaN = 500.是什么赋予了?我错过了什么,请解释一下. 更新: In [92]: # fill NaN with zero b = b.fillna(0) b Out[92]: California 0 Texas 71000 Oregon 16000 Ohio 35000 In [93]: a Out[93]: Ohio 35000 Texas 71000 Oregon 16000 Utah 5000 In [94]: # a is still good a+b Out[94]: California NaN Ohio 70000 Oregon 32000 Texas 142000 Utah NaN 解决方法
Pandas不假设500 NaN = 500,但很容易要求它这样做:a.add(b,fill_value = 0)
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |