pandas stack()操作在实践中产生了一些意想不到的结果,我无法用一个小的工作示例来复制这些结果。我很好奇是否有其他人遇到过这种行为,是否有可能解释其根本原因。首先,一个小的可复制的例子演示了我要做的:
data = {'kpiOne': [1,1,1,1,1,2,2,2,2,2],
'kpiTwo': [3,3,3,3,3,4,4,4,4,4],
'kpiThree': [5,5,5,5,5,6,6,6,6,6],
'PrePost': ['A', 'A', 'A', 'A', 'A', 'B', 'B', 'B', 'B', 'B', ]}
dfr = pd.DataFrame(data)
dfr = dfr.groupby('PrePost').describe()
dfr = dfr.stack(0) #this is where my problem is in practice, but works fine in this example
dfr
以下是我在实际数据中使用的代码,以防这里有任何相关内容:
kpiSum = dfr[(dfr.filter_any == False) & (dfr.version == 'After')].groupby('waveTwoExp')[kpi].describe()
kpiSum = kpiSum#.stack(0)
kpiSum
输出如下所示(注释符号就位)I堆栈(0):
[堆放前][1]
[1] :https://i.stack.imgur.com/cMTAK.png
删除注释符号和堆栈(0)时,输出如下所示:
[堆叠后][2]
[2] :https://i.stack.imgur.com/whXZ7.png
如果仔细观察,您会注意到值的堆叠不正确。堆叠前KPI“uarl”的平均值正确-765。叠加后,KPI“uarl”的平均值来自下一个级别0列“alCost”或797484。我不明白为什么会发生这种转变。你知道吗
奇怪的是:
请让我知道如果我的问题是明确的!还有其他人有这种行为吗?你知道吗
谢谢!
克里斯
让我们尝试升级或降级一个版本。你知道吗
这似乎是一个与MultiIndex/Reshaping differences between Pandas versions相关的bug。你知道吗
相关问题 更多 >
编程相关推荐