すべてのRの専門家に。
ある地域の心血管疾患(CVD)の60000エントリのデータセットがあります。データは主に、患者数、彼がヘルスセンターに来た日付、および彼の村、彼のヘルスセンターなどの他の多くの変数で構成されています。
各患者は1年に1回しか訪問できないという定義に基づいて、それをデータセットに適用したいと思います。つまり、今回の訪問が新規(1年の最初の訪問)であるか、フォローアップ(1年の繰り返しの訪問)であるかを、各患者の横に割り当てたいと思います。これは私のデータのstr()です。
> str(cvd1)
'data.frame': 59686 obs. of 51 variables:
$ Age : num 3532642 3555351 3575931 3599113 3622295 ...
$ Centre : Factor w/ 8 levels "L","M","N","SH",..: 2 2 2 2 2 2 2 2 2 2 ...
$ Date : Date, format: "2006-11-21" ...
$ DoB : Date, format: "1966-01-01" ...
$ Ptnum : Factor w/ 7469 levels "5011","5057",..: 4398 2105 2105 2105 2105 4352 1304 1304 1304 1304 ...
$ Sex : Factor w/ 3 levels "F","M","UNKNOWN": 1 1 1 1 1 2 1 1 1 1 ...
これは、私がやりたいことを説明するための単なる例です。
list = 1:8
Ptnum = c(1,2,1,4,1,2,1,3)
date = c("01/01/2000", "01/01/2000","24/02/2000", "26/03/2006", "04/05/2001",
"05/05/2007","05/05/2001","05/05/2007")
cvddata = data.frame(Ptnum, date)
日付をR日付オブジェクトとしてフォーマットする
cvddata$date = dmy(date)
したがって、Ptnum(1)、最初の訪問は新しいケースであり、ptnum(1)の3回目の訪問は(フォローアップ、1年以内に来る)です。ptnum(1)の5回目の訪問は(新規、最初の1年後に来る)ですが、7回目の訪問は(最後の訪問である2001年4月5日から1年以内に来たため、フォローアップ)です。
ありがとうございました