0

重複の可能性:
rでデータフレームを複数の出力ファイルに分割

マスター データ ファイルを個々の csv ファイルにサブセット化するのに役立つ R でループを作成する際に助けが必要です。私のマスターファイルは次のようになります。

マスター データセット

colA= c("A", "A", "A", "B", "B", "B",  "C", "C", "C")
colB= c(1.1,2.1,3.1,4.1,5.1,6.1,7.1,8.1,9.1)
colC= c(-1.2,-2.1,-3.1,-4.1,-5.1,-6.1,-7.1,-8.1,-9.1)
df= data.frame (spp=colA, latitude=colB, longitude=colC)
df

出力には、種ごとのデータのみを個別のcsvファイルに含める必要があるため、次のようになります。

種「A」の場合…

colA= c("A", "A", "A")
colB= c(1.1,2.1,3.1)  
colC= c(-1.2,-2.1,-3.1,)
df2= data.frame (spp=colA, latitude=colB, longitude=colC)
write.csv (df2, file= “spA.csv”)

同じ形式ですが、種「B」と「C」の別のファイルになっています

1 つまたは 2 つの種に対してこれを行うのは簡単ですが、私のマスター マトリックスには 400 を超える種が含まれています。種に基づいてデータをサブセット化するのに役立つループを作成する方法を誰か提案できますか? ありがとう

イスラエル

4

1 に答える 1

2

何かのようなもの

for(species in unique(masterData$colA)) {
    this_file <- paste0(species, ".csv")   
    write.csv(x = masterData[masterData$colA == species, ], file = this_file)
}
于 2013-01-29T07:16:48.033 に答える