通过连接两个列表(如两列的乘法)创建新的数据帧-Python

通过连接两个列表(如两列的乘法)创建新的数据帧-Python,python,pandas,Python,Pandas,这个问题从标题上看可能不清楚,因为我不知道该怎么称呼它。我希望在熊猫方面实现以下目标: a=[1,2,3,4] b=['a','b'] 我是否可以创建一个数据帧,如: column1 column2 'a' 1 'a' 2 'a' 3 'a' 4 'b' 1 'b' 2 'b' 3 'b' 4 与DataFrame构造函数一起使用: a = [1,2,3,4] b = ['a',

这个问题从标题上看可能不清楚,因为我不知道该怎么称呼它。我希望在熊猫方面实现以下目标:

a=[1,2,3,4] b=['a','b']

我是否可以创建一个数据帧,如:

column1 column2
'a'        1
'a'        2
'a'        3
'a'        4
'b'        1
'b'        2
'b'        3
'b'        4
DataFrame
构造函数一起使用:

a = [1,2,3,4] 
b = ['a', 'b']

from  itertools import product
#pandas 0.24.0+
df = pd.DataFrame(product(b,a), columns=['column1','column2'])
#pandas bellow 
#df = pd.DataFrame(list(product(b,a)), columns=['column1','column2'])
print (df)
  column1  column2
0       a        1
1       a        2
2       a        3
3       a        4
4       b        1
5       b        2
6       b        3
7       b        4
DataFrame
构造函数一起使用:

a = [1,2,3,4] 
b = ['a', 'b']

from  itertools import product
#pandas 0.24.0+
df = pd.DataFrame(product(b,a), columns=['column1','column2'])
#pandas bellow 
#df = pd.DataFrame(list(product(b,a)), columns=['column1','column2'])
print (df)
  column1  column2
0       a        1
1       a        2
2       a        3
3       a        4
4       b        1
5       b        2
6       b        3
7       b        4

我将在这里提出另一种方法,以防有人喜欢

完整模型如下:

import pandas as pd 
a = [1,2,3,4] 
b = ['a', 'b']
df=pd.DataFrame([(y, x) for x in a for y in b], columns=['column1','column2'])
df
结果如下:

    column1 column2
0   a   1
1   b   1
2   a   2
3   b   2
4   a   3
5   b   3
6   a   4
7   b   4

我将在这里提出另一种方法,以防有人喜欢

完整模型如下:

import pandas as pd 
a = [1,2,3,4] 
b = ['a', 'b']
df=pd.DataFrame([(y, x) for x in a for y in b], columns=['column1','column2'])
df
结果如下:

    column1 column2
0   a   1
1   b   1
2   a   2
3   b   2
4   a   3
5   b   3
6   a   4
7   b   4