【发布时间】:2021-10-22 05:04:04
【问题描述】:
我有一些 python 代码运行一个简单的 for 循环并打印出每个结果组合,我试图根据生成结果的顺序找出如何将这些全部附加到单个数据帧中。我下面会解释。
我有以下代码:
categories = ['small', 'medium', 'big']
parameters = ['p1_5_p2_4_p3_2', 'p1_3_p2_8_p3_3', 'p1_4_p2_3_p3_6']
Blue = [5, 4, 3]
for parameter in parameters:
for category in categories:
for x in Blue:
y = x + 1
z = x + 2
print(category)
print(parameter)
print(y)
print(z)
print('')
产生:
small
p1_5_p2_4_p3_2
6
7
small
p1_5_p2_4_p3_2
5
6
small
p1_5_p2_4_p3_2
4
5
medium
p1_5_p2_4_p3_2
6
7
medium
p1_5_p2_4_p3_2
5
6
medium
p1_5_p2_4_p3_2
4
5
big
p1_5_p2_4_p3_2
6
7
big
p1_5_p2_4_p3_2
5
6
big
p1_5_p2_4_p3_2
4
5
small
p1_3_p2_8_p3_3
6
7
...
有没有办法将它发送到 pandas 数据框,以便数据框看起来像:
Category Parameters Value_1 Value_2
----------------------------------------------------
small p1_5_p2_4_p3_2 6 7
small p1_5_p2_4_p3_2 5 6
small p1_5_p2_4_p3_2 4 5
medium p1_5_p2_4_p3_2 6 7
medium p1_5_p2_4_p3_2 5 6
medium p1_5_p2_4_p3_2 4 5
big p1_5_p2_4_p3_2 6 7
big p1_5_p2_4_p3_2 5 6
big p1_5_p2_4_p3_2 4 5
small p1_3_p2_8_p3_3 6 7
...
有没有办法将我的初始输出组织到这个数据框中?
【问题讨论】:
-
是的 - 查看
pd.DataFrame上的文档 - 有很多方法可以做到这一点。 -
这能回答你的问题吗? cartesian product in pandas
标签: python pandas dataframe append rows