0
データフレームにパディング(padr
パッケージ)を使用して時間間隔を埋めました。ここで、指定した列のセットのギャップ値を埋めるために、私はfill_by_function
を使用しています。一般的に、fill_by_function
は、引用符で囲まれていない列名を引数として取ります。しかし、私の場合は、列名のリストが提供されています。padrのfill_by_functionに引用符で囲まれていない列リストを渡す
私の質問は、fill_by_function
機能内の列リストをどのように渡すことができるかです。列のリストはあらかじめ定義されていないので、fill_by_function
の列名をハードコードすることはできません。
私が試した例ですが、エラーが発生しました。
x <- seq(as.Date('2016-01-01'), by = 'day', length.out = 366)
x <- x[sample(1:366, 200)] %>% sort
x.df <- data.frame(x = x,
y1 = runif(200, 10, 20) %>% round,
y2 = runif(200, 1, 50) %>% round,
y3 = runif(200, 20, 40) %>% round)
c.list <- c("y1","y2")
x.df %>% pad %>% fill_by_function(as.name(c.list),fun=mean)
後、私は
Error in inds[i] <- which(colnames_x == as.character(cols[[i]])) : replacement has length zero
を得たエラーメッセージです私はこれが私のために働いた
これは実際に私に 'cols [[i]]:subscript out of bounds'エラーを与えています。また、あなたの出力から、解決策はすべてのカラムに 'mean'関数を適用したようです。 – user2129946
私は明らかにエラーが出ません。パッケージ 'padr'と' dplyr'を更新してみてください??? (わからない) – CPak
2番目のコメントに関して、あなたの投稿は、あなたが期待していたものに対処していませんでした...私は単にあなたが要求した通りに複数の列名を渡しました – CPak