0

私は多くの主題を持つ膨大なデータを持っています。データには次の列があります。

    ID  TIME   CONC
7030104 2.0    0.536
7030104 2.5    1.320
7030104 3.0    1.460
7030104 4.0    5.070
7030104 5.0    17.300
7030104 6.0    38.600
70304   8.0    0.589
70304   10.0   35.400
70304   12.0   29.400
70304   24.0   10.900
70304   36.0   3.260
70304   48.0   1.290

被験者 ID ごとに個別のプロット (CONC 対 TIME) を描画し、それを被験者の ID 番号とともに作業ディレクトリに自動的に保存したいと思います。

私は単純なプロットを使用していますが、それをすべてのサブジェクト ID に適用し、プロットを作業ディレクトリに自動的に保存する方法について助けが必要です。

setwd("..")
plotobj <- NULL
plotobj <- plot(sub$TIME,sub$CONC,type="b")

私はRStudioを使用しています

あなたの支援に感謝します!

4

2 に答える 2

0

プロットごとに1ページの単一の「pdf」ファイルに保存できます。プロットの「タイトル」は、サブセット「ID」を識別します。ここでは、データセットを「ID」lapplyで分割(分割)して使用しています。ループが R コンソールに出力されない ように、引数をsplit指定してラップします。plotinvisibleNULL

par(mfrow=c(1,1))
pdf('Amer.pdf')
lst <- split(df, df$ID)
invisible(lapply(lst, function(sub) with(sub, 
    plot(TIME, CONC, type='b', main= paste('Plot of', ID[1])) )))
dev.off()

.jpgまたは、「別の」プロットが必要な場合は、lapply引き続き使用できます

 invisible(lapply(lst, function(sub) {
      jpeg(paste0(sub$ID[1],'.jpg'))
       with(sub, plot(TIME, CONC, type='b', main=paste('Plot of', ID[1])))
      dev.off()
      }))

データ

df <- structure(list(ID = c(7030104L, 7030104L, 7030104L, 7030104L, 
7030104L, 7030104L, 70304L, 70304L, 70304L, 70304L, 70304L, 70304L
), TIME = c(2, 2.5, 3, 4, 5, 6, 8, 10, 12, 24, 36, 48), CONC = c(0.536, 
1.32, 1.46, 5.07, 17.3, 38.6, 0.589, 35.4, 29.4, 10.9, 3.26, 
1.29)), .Names = c("ID", "TIME", "CONC"), class = "data.frame",
row.names = c(NA, -12L))
于 2015-01-06T06:31:58.060 に答える