如何用Pandas便捷创建多列DataFrame?Ind含121组数据
解决Pandas批量创建多列DataFrame的问题
你完全不用手动逐个写出Ind[0]、Ind[1]这类索引,直接把整个Ind列表传给pd.DataFrame,再转置就能得到想要的结果,不管里面有多少组数据都适用:
import pandas as pd # 示例数据,实际是121组 Ind = [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]] DAT = pd.DataFrame(Ind).T print(DAT.head())
运行后输出和你手动写的结果完全一致:
0 1 2 3 0 1 4 7 10 1 2 5 8 11 2 3 6 9 12
原理很简单:pd.DataFrame(Ind)会自动把每个子列表作为DataFrame的一行,调用.T转置后,这些行就变成了列,和你手动把所有子列表放进列表里传入的效果完全相同,而且能自动适配任意数量的子列表(比如你的121组)。
如果习惯用另一种写法,也可以用from_records,效果一样:
DAT = pd.DataFrame.from_records(Ind).T
内容的提问来源于stack exchange,提问作者felipe
相关产品推荐
相关产品推荐

