这是我所做的。我需要5个随机数,所以第一个命令是好的。之后,我想了解概率公式,但是我无法正确写入。 我需要找到五个随机数中每一个的概率。之后,我需要找到1中的所有N个数的概率89,做这样一个在这里的图形..如何使用..命令
如何使用..命令
回答
你在你的函数有一个额外的括号,应
b <- function(n){
x<- prod(1:365)
P <- ((x)/(365^n)*(prod(1:365-n)))
Pn <- 1-P
}
你不需要'return'来返回结果。这有点误导 – 2014-10-03 19:54:41
好点,谢谢 – Stedy 2014-10-03 19:55:35
'b < - function(n){x < - prod(1:365); 1 - ((x)/(365^n)*(prod(1:365-n)))}' – 2014-10-03 19:57:22
prod(1:365)
(例如,365!)评估为Inf
,所以这不起作用。相反,使用此:
b <- function(n) 1 - prod(365:(365-(n-1))/365)
这需要两个事实的优点:
- 365 /(365-N)! = prod(365,364,...,365-(n-1)),即只有n个项的乘积。
- 其中每个术语除以365(通过分母中的365^n)。
所以结果与prod(1,364/365,363/365,...,(365-(n-1))/ 365))相同。这个产品是可计算的。
但还有一个额外的问题:在plot(...)
中使用此函数时,它必须是“向量化的”,也就是说它必须将一个向量作为参数并返回一个长度与结果相同的向量。要做到这一点,使用Vectorize(...)
功能R.
b <- Vectorize(function(n) 1 - prod(365:(365-(n-1))/365))
现在你可以使用plot(...)
plot(1:89,b(1:89), type="l")
上面定义了'b(...)','b (5:50,5))' – jlhoward 2014-10-03 20:31:11
你真的需要阅读R的介绍。[This](http://www.statmethods.net/)是一个很好的例子。使用:'s < - sample(5:50,5); data.frame(n = s,Pn = b(s))'这将显示一个n对Pn的表格。 – jlhoward 2014-10-03 20:51:33
使用这些命令得到这个错误:'> s < - sample(5:50,5) > s [1] 37 36 41 8 31 > data.frame(n = s,Pn = b(s)) ñ光合速率 1 37 0.848734 2 36 0.848734 3 41 0.848734 4 8 0.848734 5 31 0.848734 警告消息: 在365:(365 - (N - 1)): 数值表达式具有5个元素:仅第一次使用 ' – user3009403 2014-10-04 08:48:31
- 1. 如何使用grep命令
- 2. 如何使用df命令
- 3. 如何使用sed命令
- 4. 如何使用mysqlfrm命令?
- 5. 如何使用命令行
- 6. 如何使用命令行
- 7. 如何使用命令ld
- 8. 如何使用命令行
- 9. 如何使用命令:HttpEntity?
- 10. 如何使用命令行
- 11. 如何使用cl命令?
- 12. 如何使用awk命令
- 13. 如何使用PowerShell命令
- 14. 如何使用SVN命令
- 15. 如何使用ssh命令,使用execlp()?
- 16. 使用split命令使用slice命令?
- 17. 使用dock命令使用aws命令
- 18. 如何使用C程序在命令propmt上传递命令?
- 19. 如何执行的命令的命令使用C#
- 20. 如何使用ssh命令在命令中发送密码
- 21. 使用命令
- 22. 如何使用Hadoop FS -copyToLocal命令
- 23. 如何使用SFK过滤命令
- 24. 如何在命令行中使用addr2line
- 25. 如何在Cygwin中使用svn命令
- 26. 如何在命令行上使用aspell
- 27. 命令“make menuconfig”如何使用ncurses库?
- 28. Selenium中如何使用VerifyTextPresent命令?
- 29. 如何使用文本命令
- 30. 如何使用命令行中的Java
为什么在这个问题上删除代码? – 2014-10-04 15:18:10
@MatthewLundberg这是错的 – user3009403 2014-10-05 12:57:44
但它显示了你正在尝试,这有助于很多。 – 2014-10-08 21:49:54