dbl_var<-lambda
probpois <-function(x, lambda){
#e<-2.718
prob<-exp(((lambda^x)*(2.718^lambda))/factorial(x))
retun(prob)
}
a<-readline((prompt="Enter a value: "))
b<-readline((prompt="Enter b value: "))
lambda<-readline((prompt="Enter lambda value: "))
x<-(a:b)
while (x<b || x>a) {
dpois(x ,lambda)
}
ıRスタジオで計算ポアソン分布プログラムを書いてみたいです。このプログラムはエラーになります。 >> "dpoisでのエラー(X、ラムダ):数学関数への非数値引数"エラー:数学的関数に数値以外の引数があります。
コンソール:
> dbl_var<-lambda
> probpois <-function(x, lambda){
+
+ #e<-2.718
+ prob<-exp(((lambda^x)*(2.718^lambda))/factorial(x))
+
+ retun(prob)
+
+
+
+ }
> a<-readline((prompt="Enter a value: "))
Enter a value: 1
> b<-readline((prompt="Enter b value: "))
Enter b value: 4
> lambda<-readline((prompt="Enter lambda value: "))
Enter lambda value: 1.5
> x<-(a:b)
> while (x<b || x>a) {
+
+ dpois(x ,lambda)
+
+ }
Error in dpois(x, lambda) : Non-numeric argument to mathematical function
>
あなたの 'readline'呼び出しで2つのかっこを使うのは悪い考えです。それは' prompt'という変数を作り、その値を 'readline'に渡します。新しい変数を作成せずに 'prompt'という名前の引数を設定する場合は、' readline(prompt = "Enter value:") 'と書くべきです。 – user2554330