以下のコードは例です。私の関数testf
は、NAME
またはSRC
を個別に呼び出すときにうまく動作しますが、これをベクターを介して実行しようとすると機能しません。だから私はそれをループにして、権利によって(私が理解しているところから)これはうまくいくはずだが、それはない。それは出力を生成しますが、それは明らかに間違っています、なぜ私はこれをやっているのか分かりません。これを間違って適用していますか?ループが間違った答えを出力するため
testf <- function(j) {
Example %>% group_by_(.dots = j) %>% summarize(Count=n())
}
# examples:
testf("NAME")
testf(c("NAME", "AIR"))
for (v in c("NAME", "SRC")) {
print(testf(v))
}
説明についてはこちらをご覧ください:ありがとう
NAME <- c("SYNOP", "SYNOP", "METAR", "METAR", "SYNOP", "METAR")
AIR <- c(6.7, 8.3, 9.2, 8.9, 9.1, 8.7)
SRC <- c("WMO", "WMO", "WMO", "ID_3", "ID_3", "WMO")
Example <- data.frame(NAME, AIR, SRC)
require(dplyr)
testf <- function(j) {
Example %>% group_by((j)) %>% summarize(Count=n())
}
testf(NAME)
testf(SRC)
vector <- c("NAME", "SRC")
testf(vector)
for (v in vector) {
testg <- testf(v)
print(testg)
}
パーフェクトありがとう、これは私がforループで変更したものがなぜそれを修正したのか理解できない – Visser