我有一个这样的数据框:field date source colA colB20180101 source1 1 Nan source2 Nan 220180102 source1 3 Nan source2 NaN 4...保证 colA 将始终拥有源 1 的数据,而永远不会拥有源 2 的数据。与 colB 类似,它将始终拥有源 2 的数据,但永远不会拥有源 1 的数据。现在我想做一个 unstack 并重新排序,所以我可以有这样的东西:source source1 source2field colA colBdate20180101 1 220180102 3 4...但问题是,当我取消堆叠时,我得到了包含 source1 colB 和 source2, colA 的所有 NA 的列。我不想在 unstack 之后做 dropna,因为我觉得有机会丢失重要信息。有没有办法做我想做的事?
1 回答
慕田峪9158850
TA贡献1794条经验 获得超7个赞
使用DataFrame.stack的系列去掉NaNs的Series.unstack对DataFrame与MultiIndex在列:
df = df.stack().unstack([1,2])
print (df)
source source1 source2
colA colB
date
20180101 1.0 2.0
20180102 3.0 4.0
添加回答
举报
0/150
提交
取消