我有一个包含AXLES
列的数据帧。AXLES
列始终具有以下值之一:[3, 4, 5, ,6 ,7, 8]
。我运行一个过滤器,然后更改索引,然后groupby,然后重新采样,最后取消对数据帧的堆栈,如下面的代码所示。在
resamp = df[(df.GVW > 100) & (df.AXLES.isin([3,4,5,6,7,8]))].set_index('TIMESTAMP').groupby('AXLES').resample('M', how='count').CLASS
dfTemp = resamp.unstack(0)
dfTemp.index = [ts.strftime('%b 20%y') for ts in dfTemp.index]
这给了我下面的数据帧,没问题。在
^{pr2}$但是,这里有一个问题:由于我应用了dfWIM.GVW > 100
过滤,所有AXLES
=3的行都被过滤掉了。如何在最终的数据帧中仍然保留这个被删除的列?我正在尝试按如下方式获取最终数据帧(缺少“3”列,数据帧中添加了“0”值):
AXLES 3 4 5 6 7 8
Jul 2016 0 191 1582 212 183 6
如果在所有筛选之后无法保留删除的列,那么如何将值为0的[3, 4, 5, 6, 7, 8]
列(如果缺少)添加到最终数据帧中?在
非常感谢!在
这只是对你问题最后一部分的回答,不是完整的答案:
pythonical找到丢失的列:
选项1(python):
^{pr2}$方案2(熊猫):
相关问题 更多 >
编程相关推荐