迭代列表以创建数据框输出 Pandas

Posted

技术标签:

【中文标题】迭代列表以创建数据框输出 Pandas【英文标题】:Iterate a list in order to create a dataframe output Pandas 【发布时间】:2021-01-01 14:43:05 【问题描述】:

亲爱的, 我需要你的帮助来微调我在 Python 中的代码,Pandas。

我有一个清单: my_list = [405218,405211,309211,234589]

我想迭代这个列表,使用每个元素进行详细说明,生成由 1 行和 25 列的数据框表示的输出。然后我想创建一个数据框,其中每一行代表 1 个输出,这样我就有一个包含所有输出的数据框。 在此示例中,由于我的列表基于 4 项,因此数据框结果将是 25 列和 4 行的数据框。

感谢您的任何建议,

【问题讨论】:

【参考方案1】:

所以我假设你想用相同的数字填充行。如果是这种情况,您可以简单地创建一个 25 行的二维列表,每行都有该列表。你会得到这样的东西:-

[[405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589],
 [405218, 405211, 309211, 234589]]

现在您只需要使用 numpy 对其进行转置,并使用 pandas 使其成为数据框。

my_list = [405218,405211,309211,234589]
df = pd.DataFrame(np.array([my_list for _ in range(25)]).T)

您将获得以下数据帧作为输出。

希望它回答了您的问题。

【讨论】:

以上是关于迭代列表以创建数据框输出 Pandas的主要内容,如果未能解决你的问题,请参考以下文章

Pandas - 迭代中的重复行

使用 Pandas 迭代地将列添加到数据框中

Pandas列表的列,通过迭代(选择)三列的每个列表元素作为新列和行来创建多列[重复]

迭代 4 个 pandas 数据框列并将它们存储到 4 个列表中,其中一个 for 循环而不是 4 个 for 循环

从字典列表创建 Pandas MultiIndex 的最佳方法是啥?

迭代 Pandas 数据框的最佳方法?