我有以下数据帧:
ID,SomeValue,FooA1,FooA2,FooA3,FooB1,FooB2,FooB3,BarA1,BarA2,BarA3,BarB1,BarB2,BarB3
1 ,val1 ,4 ,7 ,2 ,8 ,1 ,3 ,2 ,9 ,2 ,0 ,9 ,2
2 ,val2 ,2 ,3 ,8 , , , ,1 ,5 ,3 , , ,
.
.
我想合并列“[Foo | Bar][A | B]\d+”,这样它们就变成了以下内容,即合并多个列的不同组合,并创建适当的新列来包含表示这些变化的变量:
ID,SomeValue,FooBar ,AB ,Num ,Val
1 ,val1 ,Foo ,A ,1 ,4
1 ,val1 ,Foo ,A ,2 ,7
1 ,val1 ,Foo ,A ,3 ,2
1 ,val1 ,Foo ,B ,1 ,8
1 ,val1 ,Foo ,B ,2 ,1
1 ,val1 ,Foo ,B ,3 ,3
1 ,val1 ,Bar ,A ,1 ,2
1 ,val1 ,Bar ,A ,2 ,9
1 ,val1 ,Bar ,A ,3 ,2
1 ,val1 ,Bar ,B ,1 ,0
1 ,val1 ,Bar ,B ,2 ,9
1 ,val1 ,Bar ,B ,3 ,2
2 ,val2 ,Foo ,A ,1 ,2
2 ,val2 ,Foo ,A ,2 ,3
2 ,val2 ,Foo ,A ,3 ,8
2 ,val2 ,Bar ,A ,1 ,1
2 ,val2 ,Bar ,A ,2 ,5
2 ,val2 ,Bar ,A ,3 ,3
请注意,可以有空值,例如在上面的第2行中,这些值不应包含在最终集合中
这一定很简单,但我是新来的熊猫,正在努力找到正确的命令使用
事先谢谢你的帮助
您可以使用:
index
到列^{相关问题 更多 >
编程相关推荐