2017-03-27 2 views
1

これを繰り返すよりも、これらのデータフレームと列のクラスを変更する方が良い方法はありますか?ありがとう!複数のデータフレームでクラスを変更する

df46$`Measurement Date` <- as.Date(df46$`Measurement Date`, format = "%Y-%m-%d") 
df45$`Measurement Date` <- as.Date(df45$`Measurement Date`, format = "%Y-%m-%d") 
df44$`Measurement Date` <- as.Date(df44$`Measurement Date`, format = "%Y-%m-%d") 
df43$`Measurement Date` <- as.Date(df43$`Measurement Date`, format = "%Y-%m-%d") 
df42$`Measurement Date` <- as.Date(df42$`Measurement Date`, format = "%Y-%m-%d") 
df41$`Measurement Date` <- as.Date(df41$`Measurement Date`, format = "%Y-%m-%d") 
df40$`Measurement Date` <- as.Date(df40$`Measurement Date`, format = "%Y-%m-%d") 

lapply関数を使用すると意味がありますか?

lapply(df46:df40[`Measurement Date`], Date) 
+0

。 [この記事](http://stackoverflow.com/questions/17499013/how-do-i-make-a-list-of-data-frames)は読む価値があります。 gregorの答えは、data.framesのリストを扱う際のヒントを提供しています。私の答えは、同様の名前のdata.framesをリストに入れるかなり簡単な方法を提供します。 – lmo

+0

あなたはlapplyを使って仕事をすることができます。しかし、あなたはdata.framesのリストを取得します。彼らは仕事が難しいかもしれません。私はなぜ最初に多くのデータフレームを持っているのか聞いてもらえますか? – DJJ

+0

@DJJ各データフレームは約250MBのファイルで、約25のファイルがあります。 Rは何らかの理由で結合データフレームクラスを変更させないので、結合する前に個々のファイルを個別にスクラブする必要があります。 – Starbucks

答えて

4

あなたはevalを解析して試すことができます:data.framesが同様の構造である場合は、リストにそれらを置くことを検討し、

for (i in 40:46){ 
    eval(parse(text = 
    paste0('df',i,'$`Measurement Date` <- 
     as.Date(df',i,'$`Measurement Date`, format = "%Y-%m-%d")') 
)) 
} 
+2

良い答え。おそらくもっと読みやすくなるのは 'eval(substitute())'を使うことでしょう。 df = as.name(paste0( "%Y-%m-%d")); list(df = df "、i)))))" ' –

+0

@Vasilis Vasileiou - ありがとう! – Starbucks

関連する問題