我正在尝试用'\'分割数据框列名。我的数据看起来像这样。
A\B | X\Y | C\D|
____________________
0 | 1 | 1 |
如何通过拆分列名称来实现以下数据框。
A |B |X |Y |C |D
___________________________________________
0 |0 |1 |1 |1 |1
我正在使用pandas库进行数据预处理
答案 0 :(得分:2)
拆分各列以找出需要重复多少次的值,然后构造DataFrame
print(df)
A\B X\Y C\D G\H\J
0 0 1 1 2
1 1 17 19 145
s = df.columns.str.split('\\')
pd.DataFrame(df.to_numpy().repeat(s.str.len(), axis=1),
columns = [x for y in s for x in y])
A B X Y C D G H J
0 0 0 1 1 1 1 2 2 2
1 1 1 17 17 19 19 145 145 145