0
2つの引数リストを持つ関数を呼び出して、すべての既存のrbind(優先bind_rows)したいと思います。私の一般的なコードのthats:r 2つの引数リストと既存のbind_rowsを持つ関数呼び出し
combine <- function(arg1, agr2){
df_gen<-read_csv2(paste0(arg1,"/FolderPref", arg2,"/PID_var.csv")) %>%
select(PID, Site) %>%
mutate(Group=arg2)
dir<-list.files(path = paste0(arg1,"/FolderPref", arg2), pattern = "\\General_information.csv$")
df<-read_csv2(paste0(arg1,"/FolderPref", arg2,"/", dir)) %>%
filter(Status == 2) %>%
inner_join(df_gen, by="PID") %>%
mutate(enrollment=dmy_hm(Date)) %>%
select(PID, Group, Site, enrollment)
return(df)
}
arg1<-list("center1", "center2", "center3", "center4", "center5")
arg2<-list("Group1", "Group2", "Group3", "Group4", "Group5")
私の究極の目的は、引数1のすべての可能な組み合わせで1人のDF持つことです(center1-GROUP1、center1・グループ2、... center2-GROUP1、center2-グループ2を、...)
問題は、「General_Information.csv」ファイルがすべて存在するとは限りません。したがって、5×5の組み合わせから、最終データフレームは25個未満の単一dfを有することになる。
もちろん、私は "結合"と "bind_rows"呼び出しに存在しないdfのコメントを25行書くことができます。しかし、私はこの問題に対するより良い解決策があることを知っています。
あなたのサポートを楽しみにしています。
はありがとうございました。 file.existsには前にWD changeコマンドが必要で、isTURE(file.exits(file))が必要です。手伝ってくれてどうもありがとう。 – Stephan
@Stephanあなたの問題を解決する助けがあれば私の解決策を受け入れることができます – PoGibas