루프 내에서 자동 인쇄 기능이 해제되어 있습니다. 출력을 보려면 두 경우 모두 명시 적으로 print
해야합니다. [1] 9
은 명시 적으로 y
의 값을 인쇄하고 있기 때문에 표시됩니다.
다음은이 작업을 수행하는 방법에 대한 예입니다.
> DF <- data.frame(A = rnorm(100), B = rlnorm(100))
> y <- 1
> shapiro.test(DF[,y])
Shapiro-Wilk normality test
data: DF[, y]
W = 0.9891, p-value = 0.5895
자동 인쇄 기능이 있습니다.
for(y in 1:2) {
print(shapiro.test(DF[,y]))
}
더 많은 테스트를 인쇄 할 경우, 단지 루프에서 그들에게로 여분의 줄을 추가합니다 : 루프에서 우리는해야 할 것
for(y in 1:2) {
writeLines(paste("Shapiro Wilks Test for column", y))
print(shapiro.test(DF[,y]))
writeLines(paste("Anderson Darling Test for column", y))
print(ad.test(DF[,y]))
}
을하지만 그것은 매우 아니다 당신이 출력의 양을 통해 독서를 좋아하지 않는 한 호소. 대신, 맞는 테스트 객체를 저장 한 다음 인쇄하고 조사하여 어쩌면 테스트 통계 및 p- 값을 테이블로 집계하여 처리 할 수 있습니까? 우리는 다음 예를 들어
> obj[[1]]
Shapiro-Wilk normality test
data: DF[, y]
W = 0.9891, p-value = 0.5895
사용하거나 lapply
를 사용하여 모델을 볼 수
## object of save fitted objects in
obj <- vector(mode = "list", length = 2)
## loop
for(y in seq_along(obj)) {
obj[[y]] <- shapiro.test(DF[,y])
}
개체를 설정을 담당 우리가를 저장하는 데 사용할 : 당신은 루프를 사용하여 그렇게 할 수 있습니다 우리에게 결과 :
> obj2 <- lapply(DF, shapiro.test)
> obj2[[1]]
Shapiro-Wilk normality test
data: X[[1L]]
W = 0.9891, p-value = 0.5895
말은 지금은 우리가 내선에 대한 모든 결과를 저장하는 객체를 처리 할 수 있으며, W
및 p-value
데이터를 추출하고 싶었다 우리가 원하는 비트, 예를 RACT이가 가지고
> tab2 <- lapply(obj2, function(x) c(W = unname(x$statistic),
+ `p.value` = x$p.value))
> tab2 <- data.frame(do.call(rbind, tab2))
> printCoefmat(tab2, has.Pvalue = TRUE)
W p.value
A 0.9891 0.5895
B 0.4590 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
당신이 다음 부어해야 화면에 출력을 발사보다 더 될 :
> tab <- t(sapply(obj2, function(x) c(x$statistic, x$p.value)))
> colnames(tab) <- c("W", "p.value")
> tab
W p.value
A 0.9890621 5.894563e-01
B 0.4589731 1.754559e-17
또는 유의 별의 경향을 가진 사람들을 위해
을 통하여?
'i'는 무엇입니까? - 첫 줄에'y <- 1'을 의미합니까? –