如何从两个一维数组生成二维网格并将其转换为数据帧?

Har*_*o.S 6 python numpy pandas

例如,我有两个数组:

import numpy as np
x = np.array([1,2,3])
y = np.array([10, 11])
Run Code Online (Sandbox Code Playgroud)

如何使用 x 和 y 的每种组合生成熊猫数据框,如下所示?

x      y
1     10
1     11
2     10
2     11
3     10
3     11
Run Code Online (Sandbox Code Playgroud)

My *_*ork 3

import pandas as pd
import numpy as np

x = np.array([1,2,3])
y = np.array([10, 11])


pd.DataFrame({'x':np.repeat(x,y.shape[0]),
              'y':np.tile(y,x.shape[0])})
Run Code Online (Sandbox Code Playgroud)

产量:

   x   y
0  1  10
1  1  11
2  2  10
3  2  11
4  3  10
5  3  11
Run Code Online (Sandbox Code Playgroud)