【发布时间】:2017-09-17 13:50:47
【问题描述】:
我想知道是否可以通过 Pandas 函数实现以下功能。给定两个 Pandas DataFrame,得到一个新的 DataFrame,其列是两个给定 DataFrame 中列的笛卡尔积。也就是说,在一个简单的例子中,如果我们有两个 DataFrame:
df1 = pd.DataFrame([[1,2], [1,2]], columns = ['a', 'b'])
df2 = pd.DataFrame([[3,4], [3,4]], columns = ['c', 'd'])
看起来像
df1 df2
a b c d
0 1 2 0 3 4
1 1 2 1 3 4
我正在寻找一个无需循环即可提供以下功能的函数:
df
a_c a_d b_c b_d
0 3 4 6 8
1 3 4 6 8
【问题讨论】:
-
笛卡尔积不会是别的东西,比如 (1,3) (1,4) (2,3) (2,4) \\ (1,3) (1,4 ) (2,3) (2,4) ?请参阅stackoverflow.com/a/35268188/4248972 以获得答案
-
为了吸引 Numpy 专家,我将标签更改为
numpy...
标签: python python-3.x pandas numpy dataframe