重新构造Python数据帧
我有一个python数据框架,需要对其进行重组以适应用例 数据帧如下所示:重新构造Python数据帧,python,pandas,dataframe,iteration,Python,Pandas,Dataframe,Iteration,我有一个python数据框架,需要对其进行重组以适应用例 数据帧如下所示: index | Probability Value1 | .98 Value2 | .90 Value3 | .85 Value4 | .80 我需要按如下方式重新构造数据帧,第一行是标题: Match1 | Probab1 | Match2 | Prob2 | Match3 | Prob3 | Match4 | Prob4 Value1 | .98 | Value2 | .90 | Value
index | Probability
Value1 | .98
Value2 | .90
Value3 | .85
Value4 | .80
我需要按如下方式重新构造数据帧,第一行是标题:
Match1 | Probab1 | Match2 | Prob2 | Match3 | Prob3 | Match4 | Prob4
Value1 | .98 | Value2 | .90 | Value2 | .85 | Value4 | .80
有没有一种简单的方法可以使用Pandas和Python实现这一点?
stack
+transpose
只需稍加重命名,即可满足您的需要。如果index
实际上是您的索引,只需执行df=df.reset_index()
df
现在是:
0 1 2 3 4 5 6 7
0 Match1 Prob1 Match2 Prob2 Match3 Prob3 Match4 Prob4
1 Value1 0.98 Value2 0.9 Value3 0.85 Value4 0.8
我认为您正在尝试转置数据帧,或者基本上用行切换列。试试看这是否有帮助。您可能还需要重命名一些列。不,转置将概率放在第二行,我需要它们与值相邻。更完整的示例会有所帮助。目前,您的数据帧中没有“匹配”值,因此不清楚如何在所需的输出中获得它们。这非常有效!我必须做的唯一编辑是在drop命令中添加'axis=1':df=df.drop(columns='level\u 0',axis=1).T
0 1 2 3 4 5 6 7
0 Match1 Prob1 Match2 Prob2 Match3 Prob3 Match4 Prob4
1 Value1 0.98 Value2 0.9 Value3 0.85 Value4 0.8