【发布时间】:2019-12-20 18:31:38
【问题描述】:
我想通过跨多个列表的交叉产品来扩展我的行。我目前使用的逻辑是:
list = [['Yes', 'No', 'Maybe'], ['Yes', 'No', 'Maybe']]
index = pd.MultiIndex.from_product(list, names = ["column1", "column2"])
pd.DataFrame(index = index).reset_index()
不幸的是,这不适用于多个列表。我如何能够运行如下所示的笛卡尔积: [[['是','否','也许'],['是','否','也许']],[['是','否','也许'],['是' , '不', '也许']]] 并且仍然让它们只运行两列。我希望产生 18 (2 * (3 ^ 2)) 的叉积。
【问题讨论】:
-
你能用你正在寻找的预期输出更新问题吗?
-
预期的输出会有用
-
预期输出,并使每个列表都不相同,这将极大地帮助人们了解这 18 种产品的来源。也许您正在寻找
[[*itertools.product(*x)] for x in lst] -
他们的主要兴趣点是我有一个嵌套在一个列表中的两个列表。我如何能够在每个列表上单独运行我上面包含的代码,并将它们附加到最后?
-
请查看How to make good pandas examples 并提供示例输入和输出,因为您的问题措辞方式不清楚您实际需要完成什么
标签: python pandas loops product cartesian