我想生成一个具有两个标签0
和1
的随机数据集。这是我的分布:
p(x|y = 0) = N(x1;µ1,σ2 1)N(x2;µ2,σ2 2) p(x|y = 1) = N(x1;µ3,σ2 3)N(x2;µ4,σ2 4)
其中x=(x1,x2)T包含两个连续值属性。
如何使用Python解决这个问题?我应该使用哪个库?谢谢。
回答:
有很多可能性,可能最简单的方法是直接使用numpy
的随机数生成器,因此
import numpy as npN = 100mean1, mean2, std1, std2 = 1, 5, 2, 3x0 = np.random.normal(loc=[mean1, mean2], scale=[std1, std2], size=(N, 2))mean3, mean4, std3, std4 = 2, -2, 1, 0.1x1 = np.random.normal(loc=[mean3, mean4], scale=[std3, std4], size=(N, 2))