ディレクトリに置かれている約50-60 Excelブックがあります。これらのExcelファイルはすべて同じものです。 2つのワークシートがあります.1つは説明書付きで、もう1つはすべてのシートに同じ整理されたデータがあります。 Columns/vars AからJまでは、実際に抽出したいデータですが、すべてをdata.frameに読み込んでいます。データはA〜N colsまで出力されます。dplyr :: bind_rowsでExcelファイル名を指定する.id
私はすべての生データを抽出するためのスクリプトを作成しています。私のスクリプトの一部は、list.filesの標準的な手法を使ってファイル名の「df」を構築しています。次に、私は 'lapply'を使ってすべてのExcelファイルをリストに読み込みます。今ここにはこすりが来る。
dplyr :: bind_rows(他の提案にもオープンしています)を使用して、同じヘッダーを共有しているため、すべての行を一緒にバインドします。これは私の概念証明で素晴らしい作品です。それにdplyr :: bind_rowsの.id引数を使用すると、list内のdata.frameの位置に対応するid varとして1からjを取得します。
files.list <- list.files(pattern='*.xlsx') # list file names in directory
df.list <- lapply(files.list, read_excel) # read excel into a list of dfs
df <- bind_rows(df.list, .id = "id") # bind the rows of the dfs together
data.frameが読み込まれたリストの位置とは対照的に、実際のファイル名を取得できますか?もしそうなら、どうすればいいのですか?
コードを入力してください。あなたが求めていることは本当にはっきりしません。ファイル名ではなく、どのようにディレクトリの位置を取得していますか? – Abdou
私はdownvoteしませんでした。私は投票に落ちる前にコメントを残しておきます。 – Abdou