gpt4 book ai didi

python - 在附加到 pandas 数据框时创建新列

转载 作者:行者123 更新时间:2023-11-28 21:42:20 25 4
gpt4 key购买 nike

我有一个包含约 12,000 列和几百行的数据框,如下所示:

Date     id1    id2    id3    id4    ...    id12000
1/4/16 100 78 103.5 15 35
1/5/16 100.5 78 104 16 37
1/6/16 99.5 78.5 104.5 16.5 37
1/7/16 100.1 77 104.2 13 37
1/8/16 100.3 76.5 104.2 13.5 33
1/11/16 99.8 77 103.7 13.5 34
...
5/1/17 101.1 82 103.6 12 33

每天,我都会得到一个新的数据框,我需要将其添加到该数据框中。因此,例如,我可能会得到一个 5 月 2 日的数据框,如下所示:

Date     id1    id3    id4    id6    ...    id12100
5/2/17 100 103 12.5 15 100

但该数据框可能每天都会包含一些新的 ID(列),并且它也可能会省略一些以前存在的 ID。

我希望我的新数据框在每次有新 ID 时都添加列,并用 NaN 填充该列的所有先前值。我还希望以前在数据框中的任何 ID 单元格都用 NaN 填充。因此,例如,上述两个示例数据帧的连接看起来像:

Date     id1    id2    id3    id4    ...    id12000   id12100
1/4/16 100 78 103.5 15 35 NaN
1/5/16 100.5 78 104 16 37 NaN
1/6/16 99.5 78.5 104.5 16.5 37 NaN
1/7/16 100.1 77 104.2 13 37 NaN
1/8/16 100.3 76.5 104.2 13.5 33 NaN
1/11/16 99.8 77 103.7 13.5 34 NaN
...
5/1/17 101.1 82 103.6 12 33 NaN
5/2/17 100 NaN 103 12.5 NaN 100

但是,如果我在数据框中已有的日期运行它,我只想用新值替换旧值。

我已经为这个问题争论了一段时间,但我不太清楚我需要怎么做,在正确格式化日期之间,以便我可以检查数据框中是否有重复项,以正确附加/加入/合并/等。旧值与新值。我有几个不同的地方,泛化函数对我来说真的很有用,所以我希望有人遇到过同样的问题,并且有一个我可以使用的优雅解决方案。

提前致谢!

最佳答案

In [43]: df
Out[43]:
Date id1 id2 id3 id4
0 1/4/16 100.0 78.0 103.5 15.0
1 1/5/16 100.5 78.0 104.0 16.0
2 1/6/16 99.5 78.5 104.5 16.5

In [44]: new
Out[44]:
Date id1 id3 id4 id6 id12100
0 1/6/16 11 11 11.0 11 111
1 5/2/17 100 103 12.5 15 100

In [45]: df.set_index('Date').append(new.set_index('Date'))
Out[45]:
id1 id12100 id2 id3 id4 id6
Date
1/4/16 100.0 NaN 78.0 103.5 15.0 NaN
1/5/16 100.5 NaN 78.0 104.0 16.0 NaN
1/6/16 99.5 NaN 78.5 104.5 16.5 NaN
1/6/16 11.0 111.0 NaN 11.0 11.0 11.0
5/2/17 100.0 100.0 NaN 103.0 12.5 15.0

关于python - 在附加到 pandas 数据框时创建新列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43745039/

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