【发布时间】:2017-05-02 18:42:33
【问题描述】:
我有一个大约 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
但是,如果我在数据框中已经存在的日期运行它,我只想用新值替换旧值。
我一直在为这个问题争论一段时间,但不知道我需要怎么做,在正确格式化日期之间,以便我可以检查数据框中是否有重复,正确附加/加入/合并/等。旧值与新值。我有几个不同的地方,通用函数对我非常有用,所以我希望有人遇到同样的问题并且有一个我可以使用的优雅的解决方案。
提前致谢!
【问题讨论】:
标签: python python-2.7 pandas dataframe