df2 <- data.frame(Mean = c(.5,4,2.3,1.2,3.7,3.3,.8), Numbers = "NA")
for(i in 1:length(df2$Mean)){
if(df2$Mean[i] <= .5) {
df2$Number[i] = 0
}
else if(df2$Mean[i] > .5 & df2$Mean[i] < 1.5){
df2$Number[i] = 1
}
else if(df2$Mean[i] > 1.5 & df2$Mean[i] < 2.5){
df2$Number[i] = 2
}
else if(df2$Mean[i] > 2.5 & df2$Mean[i] < 3.5){
df2$Number[i] = 3
}
else {
df2$Number[i] = 4
}
}
これはうまくいきます!しかし、それから関数を作成してその関数を呼び出そうとすると、機能しません。関数ファイルを「df2type.txt」として保存します。
type <- function(df2){
for(i in 1:length(df2$Mean)){
if(df2$Mean[i] <= .5) {
df2$Number[i] = 0
}
else if(df2$Mean[i] > .5 & df2$Mean[i] < 1.5){
df2$Number[i] = 1
}
else if(df2$Mean[i] > 1.5 & df2$Mean[i] < 2.5){
df2$Number[i] = 2
}
else if(df2$Mean[i] > 2.5 & df2$Mean[i] < 3.5){
df2$Number[i] = 3
}
else {
df2$Number[i] = 4
}
}
}
関数を次のように呼び出します。
source("df2type.txt")
type(df2)
機能が動作しない理由を教えてください。
どうもありがとう!