如何激活矩阵上的numpy随机二项式函数

2024-06-08 18:07:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我有矩阵df(尺寸4*4)。
我想根据矩阵中每个ij值的值来模拟二项分布的新值

(如果矩阵中特定分量的值是10,我想用np.random.binomial(10,0.5,1))

有没有一个聪明的方法在整个矩阵上激活这个函数


Tags: 方法函数df尺寸np矩阵random分量
1条回答
网友
1楼 · 发布于 2024-06-08 18:07:55

我不完全确定这是您想要的,但是您可以在函数上使用^{}。下面是一个简单的例子:

import numpy as np

def f(val):
    if val == 10:
        return np.random.binomial(val, 0.5, 1)
    else:
        return val

vfunc = np.vectorize(f)

a = np.arange(16).reshape(4,4)
out = vfunc(a)
print(out)
'''
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9  8 11] <  may vary
 [12 13 14 15]]
'''

相关问题 更多 >