gpt4 book ai didi

python - 如何为缺失值分组添加 NaN

转载 作者:太空宇宙 更新时间:2023-11-03 14:03:38 25 4
gpt4 key购买 nike

我有一个与此类似的 DataFrame:

import pandas

dd = pandas.DataFrame({'name' : ['foo', 'foo', 'foo', 'bar',
'bar', 'bar', 'bar', 'bar'],
'year' : ['1900', '1903', '1904', '1900',
'1901', '1902', '1903', '1904'],
'value' : np.arange(8)
})

进一步沿着管道,我需要比较 foobar就源自 value 的幅度而言。这就是为什么我想在 foo 中添加缺失年份的行。并用 NaN 填充它们.

最后的dd应该有额外的行,如下所示:

   value name  year
0 0.0 foo 1900
1 NaN foo 1901
2 NaN foo 1902
3 0.1 foo 1903
4 0.2 foo 1904
5 0.3 bar 1900
6 0.4 bar 1901
7 0.5 bar 1902
8 0.6 bar 1903
9 0.7 bar 1904

我尝试使用this solution但在这种情况下它不起作用,因为我在 year 中有重复的值专栏。

我意识到我必须添加按 'name' 分组的行但我不明白如何做到。

我应该做什么?

最佳答案

IIUC

dd.set_index(['name','year']).value.unstack().stack(dropna=False).reset_index()
Out[983]:
name year 0
0 bar 1900 3.0
1 bar 1901 4.0
2 bar 1902 5.0
3 bar 1903 6.0
4 bar 1904 7.0
5 foo 1900 0.0
6 foo 1901 NaN
7 foo 1902 NaN
8 foo 1903 1.0
9 foo 1904 2.0

关于python - 如何为缺失值分组添加 NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49073294/

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