0

データに関数を適用するために tapply() を使用しています

Myrepfun <- function(x,n){
    nstudents <- replicate(1000,sum(sample(x, size=n,replace=TRUE)))
    quantile(nstudents,probs=0.95)
}

tapply(weight,schoolcode,Myrepfun,n=2)

これを for ループ内で使用して、出力を出力したいと思います。次のことを試しましたが、エラー メッセージが表示されます。Error: unexpected symbol in "for(n in 12:13) (t=tapply(ow,sc,ndropfunction,n,p=0.95) output

for(n in 1:25) {t=tapply(weight,schoolcode,Myrepfun,n,p=0.95) print(c=(t,n))}
4

1 に答える 1

2

再現可能な例は、世界を一周させます。ただし、問題は、コードが構文的に有効でないことです。すべてを 1 行にまとめたい場合は、コマンドをセミコロンで区切る必要があります: ;. または、それらを 2 つの異なる行に配置します。2 つの例:

> x <- runif(100)
> for (i in 1:3){out <- mean(x);print(c(out,i))}
#-----
[1] 0.4958944 1.0000000
[1] 0.4958944 2.0000000
[1] 0.4958944 3.0000000
> for (i in 1:3){
+   out <- mean(x)
+   print(c(out,i))
+ }
#-----
[1] 0.4958944 1.0000000
[1] 0.4958944 2.0000000
[1] 0.4958944 3.0000000
于 2012-05-21T14:54:20.847 に答える