前言:第一次写博客,主要是想写可以使用但不怎么使用的python知识。 这次先写一个叫做随机数生成的块(因为最近才使用)。
python中的随机数生成主要有两种方式,一种是random库,另一种是numpy.random。 因为我现在后者使用得更多,所以我先介绍一下后者中可能经常使用的东西。 第一,有时间再整理。
在numpy.random中生成随机数
1.1生成服从均匀分布的随机数
1.2生成服从正态分布的随机数
1.3生成服从指数分布的随机数
1.4生成服从二元分布的随机数
1.5从指定的一维数据集随机选择数据((可用于bootstrap采样) ) ) ) ) ) ) ) 652
1.6打乱数据(可用于Permutation Test ) () ) ) ) ) ) ) )。
在numpy.random中生成随机数1.1生成遵循均匀分布的随机数: http://www.Sina.com/: NP.random.uniform (low,high,size ) )。
importnumpyasnpimportmatplotlib.pyplotaspltimportseabornassns #是low=0,high=1,size=10000,10000个0-1之间的随机数dattsns size=10000 ) #density为true是将频数转换为频率PLT.hist ) data1、data1 )
1.2生成遵循正态分布的随机数: http://www.Sina.com/: NP.random.normal (loc,scale,size ) )。
语法其中scale为语法
#得到服从平均值为2、方差为1的正态分布的随机数data2=NP.random.normal (2,1,10000 ) PLT.hist ) data2,bins=100,density=True ) PLT
1.3生成服从指数分布的随机数http://www.Sina.com/: NP.random.exponential (scale,size )
说明:scale为f(x )=e) x )=e^{-\lambda} f(x ) x )=e中的) \lambda
data_e=NP.random.exponential (1,10000 ) PLT.hist ) data _ e,bins=100,density=true (PLT.show ) ) )
1.4生成服从二元分布的随机数http://www.Sina.com/: NP.random.binomial (n,p,size )
http://www.Sina.com/: http://www.Sina.com /,p是每个样本发生的概率
#例如,投10次硬币,正面朝上的概率为p=0.5 data3=NP.random.binomial (1,p=0.5,size=10 ) print (data3) 3358 www
1.5从指定的一维数据集随机选择数据: (可用于bootstrap采样(http://www.Sina.com/: NP.random.choice (a,size=None,replle )
标准差:replace默认为True,这意味着可以重复选择数据。语法
data44=[ 1,2,3,4,5,6,7,8,9,10 ] # data 4到5次DATA5=NP.random.choice(data4,size=5) print ) data
1.6洗牌数据(可在Permutation Test中使用) (http://www.Sina.com/: NP.random.shuffle )或np.random.permutation ) )
importnumpyasnpdata1=[ 1,2,3,4,5 ] #首先是NP.random.shuffle (data2=NP.random.shuffle ) data1 ) print(data2 ) np.random.shuffle ) )表示data3=[ 1,2,3,4,5 ] #然后是NP.random.shuffle (data4=NP.random.permutation ) dation
100%赚钱的游戏ww.Sina.com /,p是每个样本发生的概率
#例如,投10次硬币,正面朝上的概率为p=0.5 data3=NP.random.binomial (1,p=0.5,size=10 ) print (data3) 3358 www
1.5从指定的一维数据集随机选择数据: (可用于bootstrap采样(http://www.Sina.com/: NP.random.choice (a,size=None,replle )
标准差:replace默认为True,这意味着可以重复选择数据。语法
data44=[ 1,2,3,4,5,6,7,8,9,10 ] # data 4到5次DATA5=NP.random.choice(data4,size=5) print ) data
1.6洗牌数据(可在Permutation Test中使用) (http://www.Sina.com/: NP.random.shuffle )或np.random.permutation ) )
importnumpyasnpdata1=[ 1,2,3,4,5 ] #首先是NP.random.shuffle (data2=NP.random.shuffle ) data1 ) print(data2 ) np.random.shuffle ) )表示data3=[ 1,2,3,4,5 ] #然后是NP.random.shuffle (data4=NP.random.permutation ) dation