考虑以下方法:
设置:
In [10]: df1
Out[10]:
Col1 Col2
1 A 0.20
2 B 0.30
3 C 0.25
In [11]: df2
Out[11]:
Col1 Col2
1 A 10.20
2 B 10.30
3 C 10.25
In [12]: df3
Out[12]:
Col1 Col2
1 A 20.20
2 B 20.30
3 C 20.25
In [13]: dfs = {'df1':df1, 'df2':df2, 'df3':df3}
我们可以将所有的DFS合并成一个DF并添加包含密钥附加列:
In [15]: df = pd.concat([df.assign(idx=key) for key, df in dfs.items()], ignore_index=True)
In [16]: df
Out[16]:
Col1 Col2 idx
0 A 0.20 df1
1 B 0.30 df1
2 C 0.25 df1
3 A 10.20 df2
4 B 10.30 df2
5 C 10.25 df2
6 A 20.20 df3
7 B 20.30 df3
8 C 20.25 df3
并保存到MySQL:
df.to_sql('table_name', engine, if_exists='...')
PS我也会考虑添加一个基于'idx'
列的索引,以加快在MySQL中的访问/搜索...
你能否提供你的数据。它看起来如何 – ammy
@ammy嗨,我已经添加了每个数据帧的格式。字典的关键字只是一个字符串,并且与一个这样的df关联。 – jack
这取决于数据应该是什么。你想把所有的数据转储到一个表,还是其他的东西?添加详情。 –