python - 如何快速创建一个 numpy 或 pandas 二维数组,其中两个轴都在一个范围内并且值是一个产品?

标签 python numpy pandas

标题比我预期的要复杂,但我基本上是在寻找一种快速制作乘法表的方法,该乘法表从 X 轴和 Y 轴的任意整数开始。

我的输出类似于 X 是 (5, 12, 1) 的范围,Y 是 (20, 25, 1) 的范围

       5      6      7      8      9      10     11
20    100    120    140    160    180    200    220
21    105    126    147    168    189    210    231
22    110    132    154    176    198    220    242
23    115    138    161    184    207    230    253
24    120    144    168    192    216    240    264

我找到了 this answer看起来很相似,但是用于索引。它似乎没有执行我正在寻找的乘法。

最佳答案

NumPy broadcasting为了 Pandas !

row = np.arange(20,25)
col = np.arange(5,12)
df = pd.DataFrame(row[:,None]*col,index=row,columns=col)

sample 运行-

In [224]: row = np.arange(20,25)

In [225]: col = np.arange(5,12)

In [226]: pd.DataFrame(row[:,None]*col,index=row,columns=col)
Out[226]: 
     5    6    7    8    9    10   11
20  100  120  140  160  180  200  220
21  105  126  147  168  189  210  231
22  110  132  154  176  198  220  242
23  115  138  161  184  207  230  253
24  120  144  168  192  216  240  264

关于python - 如何快速创建一个 numpy 或 pandas 二维数组,其中两个轴都在一个范围内并且值是一个产品?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38382824/

相关文章:

python - 如何在Tkinter界面中显示来自OpenCV的图像?

python - pandas dataframe to_dict 两列作为索引,第三列作为值

python - pandas concat ('outer' ) 不做联合?

python - Python 文档字符串 (Sphinx) 中的 csv 表格式 - 一个单元格中的多行

python - 将 Jupyter 笔记本连接到远程服务器

python - 终止无限循环

python - numpy:在排序数组中查找索引(以一种有效的方式)

python - 如何高效去除冗余线性约束进行优化?

python - 统计模型 : panel regression

python - 散点图,其中每个点颜色是 K 种颜色的不同混合