R語言學習-set.seed()


   今天查了一下R語言中set.seed(),該命令的作用是設定生成隨機數的種子,種子是為了讓結果具有重復性。如果不設定種子,生成的隨機數無法重現。

> x<-rnorm(10) #隨機生成10個隨機數

> x

[1] 0.3897943 -1.2080762 -0.3636760 -1.6266727 -0.2564784 1.1017795 0.7557815

[8] -0.2382336 0.9874447 0.7413901

> x<-rnorm(10) #再次隨機生成10個隨機數

> x

[1] 0.08934727 -0.95494386 -0.19515038 0.92552126 0.48297852 -0.59631064 -2.18528684

[8] -0.67486594 -2.11906119 -1.26519802

> set.seed(5) #設定種子

> x<-rnorm(10) # 在設定種子的前提下生成10個隨機數

> x

[1] -0.84085548 1.38435934 -1.25549186 0.07014277 1.71144087 -0.60290798 -0.47216639

[8] -0.63537131 -0.28577363 0.13810822

> set.seed(5) # 設定種子

> y<-rnorm(10)

> y

[1] -0.84085548 1.38435934 -1.25549186 0.07014277 1.71144087 -0.60290798 -0.47216639

[8] -0.63537131 -0.28577363 0.13810822

> x == y

[1] TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE TRUE

    從上面的例子可以發現,前兩次生成的10個隨機數都不一樣。后兩次在設定了相同的種子前提下,生成的隨機數是相同的。

轉載於:http://blog.sina.com.cn/s/blog_5de124240101pwm3.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM