1
[初心者ここ]非常に奇妙な問題に悩まされています。私はラグを計算する関数を持っていますが、引数が関数で指定されていないときにはうまく動作しますが、名前を付けたときはうまく動作しません。 (私は列を渡しています)引数のクラスとしてユーザー定義関数の引数の名前を付けた後、データフレームとして渡される列
次のコードdoesntの仕事、そして版画 "data.frame"
lagger = function(ind = a,dep = c,lag = b){
print(class(a))
print(paste("linear correlation" ,cor(a,c), sep=" "))
print(paste("log linear correlation:" ,cor(log(a),c), sep=" "))
print(paste("log log correlation:" ,cor(log(a),log(c)), sep=" "))
for (i in 1:b){
del = a
del <- c(rep(NA,i),a[1:(NROW(a)-i)])
corr = (cor(del,c,use="complete"))
corr_log = cor(del,c,use="complete")
corr_log_log = cor(log(del),log(c),use="complete")
print(paste(" lag of" ,i , "unit/s :" , round(corr,3) ,"log",round(corr_log,3),"log log",round(corr_log_log,3), sep = " "))
}
}
このコードは動作しますが:
lagger = function(a,c,b){
print(class(a))
print(paste("linear correlation" ,cor(a,c), sep=" "))
print(paste("log linear correlation:" ,cor(log(a),c), sep=" "))
print(paste("log log correlation:" ,cor(log(a),log(c)), sep=" "))
for (i in 1:b){
del = a
del <- c(rep(NA,i),a[1:(NROW(a)-i)])
corr = (cor(del,c,use="complete"))
corr_log = cor(del,c,use="complete")
corr_log_log = cor(log(del),log(c),use="complete")
print(paste(" lag of" ,i , "unit/s :" , round(corr,3) ,"log",round(corr_log,3),"log log",round(corr_log_log,3), sep = " "))
}
}
なぜ? ありがとうございます。あなたの関数の引数で