我正在尝试将一些数据框彼此合并,同时在其间添加一个单元格和空白行。
说我有3个dfs。 df1,df2,df3和我也有一个列表= [“ part1”,“ part2”,“ part3”]
我正在寻找合并df的方法,
“ part1”
df1
“第2部分”
df2
“第3部分”
df3
有什么好方法吗?
答案 0 :(得分:2)
IIUC,
df1 = pd.DataFrame(np.random.randint(0,100,(5,5)), columns=[*'ABCDE'])
df2 = pd.DataFrame(np.random.randint(0,100,(8,5)), columns=[*'ABCDE'])
df3 = pd.DataFrame(np.random.randint(0,100,(7,5)), columns=[*'ABCDE'])
l = ["part1", "part2","part3"]
pd.concat([pd.concat([pd.Series(lb), d]) for d, lb in zip([df1,df2, df3],l)], ignore_index=True).fillna(' ')
输出:
0 A B C D E
0 part1
1 6 99 30 92 78
2 37 86 92 13 47
3 79 5 69 98 76
4 98 45 24 77 89
5 31 72 31 73 90
6 part2
7 18 18 89 9 5
8 71 74 34 77 20
9 90 93 5 37 47
10 31 80 59 54 54
11 17 77 48 68 34
12 9 31 22 89 70
13 35 87 97 41 76
14 59 91 23 74 34
15 part3
16 41 65 99 82 60
17 10 94 85 71 60
18 81 8 16 68 9
19 80 73 42 3 23
20 45 93 41 33 54
21 87 0 71 82 3
22 29 62 7 82 84