2017-03-17 2 views
0

毎月Rスクリプトを実行する必要があります。.csvファイルをデータフレームに読み込み、いくつかの操作を行います。名前がベクトルに格納されたデータフレームを作成する方法

例えば、動的にする必要がありこのデータフレームの名前:df_feb 2月のので、私は必要なデータが含まれている文字ベクトルを作成している

1月、 df_janペースト()機能とSys.Date()機能

私はトンをしたいを使用してフレーム名oこのコードを自動化するので、このスクリプトを実行するたびにこのデータフレームの名前を変更したくありません。

このデータフレームに.csvをどのように読み込むのですか。 現在、データフレームにファイルをロードしています - 'df'assign()関数を使用して、必要な名前を割り当てています。

おかげ

+2

へのパスでcreate.dfを呼び出します。私。 'assign(" df_jan "、read.csv(...))' –

+0

はい、しかし、このデータフレームは存在しません。名前 'df_jan'はSys.Dateとpaste関数を使って動的に作成されたベクトルに格納されます。 月に応じて毎月名前が変更されるデータフレームに.csvファイルを読み込みたい – Vaibhav

+2

コード内のdata.frameの名前を変更する必要があると思われる理由は不明です。それはより良い選択肢を提案することを困難にします(それを行う必要はないからです)。 – Roland

答えて

1
create.df <- function(path){ 
     assign(paste0("df_", format(Sys.Date(), "%b")), 
       read.csv(path), 
       envir = .GlobalEnv 
       ) 
} 

は、あなたが1回の呼び出しでそれをすべて行うことができ、代わりに、最初のdata.frameにCSV形式で読み、その後割り当てる使用してのご.csv

+1

これを行わないでください。グローバル環境で自動的に作成されたダイナミックな名前のdata.framesをいくつか作成するのではなく、それらをまとめてリストに入れるだけです。 – Roland

+0

さて、私は間違っているかもしれません。 – utubun

+0

そして、これらのデータフレームをコードでどのように参照するのですか?たとえば、colnames(df)関数を使用してcolnamesを割り当てるときに、パラメータで渡すものは何ですか? – Vaibhav

関連する問題