ディレクトリには780個のファイルがあり、78個の異なるファイルにRを使用して行をバインドし、ファイルごとに.txtを書き込む必要があります。ファイルの名前は、これらのようなものです:Rのデータテーブルとパターンマッチングのあるファイルのリスト
S1_S1_F1.xlsx
S1_S2_F1.xlsx
...
S1_S5_F1.xlsx
S1_S6_F2.xlsx
...
S1_S10_F2.xlsx
S2_S1_F1.xlsx
10回繰り返さS1_(.*).xlsx
expresionの最初の部分は、その後、(.*)_S1(.*).xlsx
から(.*)S10(.*).xlsx
に変える第二部で、S78_(.*).xlsx
まで変化します。私はS1.txt
からS78.txt
までの78のファイルを持つために、第2期だけでファイルを結合する必要があります。
私のアプローチは、それが次のコードでファイルによってファイルやっていたので、私は、Rの専門家には程遠いです:あなたが見ることができるように
S1<-list.files(pattern = "^S1(.*).xlsx")
S1<-lapply(S1,read_excel)
S1 <- bind_rows(S1)
write.table(S1, "S1.txt", sep="\t",row.names=FALSE)
アップ
S78<-list.files(pattern = "^S78(.*).xlsx")
S78 <-lapply(S78,read_excel)
S78 <- bind_rows(S78)
write.table(S78, "S1.txt", sep="\t",row.names=FALSE)
へ、このコードはaustralopithecusによって書かれたようです(私はそうではありません)ので、私はあなたの助けを請う! forループでどうすればいいですか?
どうしたらうまくいかないのですか?エラー?望ましくない結果はありますか? – Parfait
@Parfaitそれは動作しますが、forループを使ってコードを改善し、10倍以上のファイルを別のディレクトリに適用したいだけです。それ以外の場合は、私は同じようにすべてをやり直します。 – jealcalat