본문 바로가기
반응형

의학통계/SAS Tip9

SAS에서 중복된 데이터 제거하기 SAS에서 중복된 데이터 제거하기 중복된 데이터는 경우의 수가 다양합니다. 몇 가지의 경우에 대해 SAS data 구문의 first.ID, last.ID 와 proc sort 의 nodupkey 를 이용하여 중복된 record 를 제거해 보겠습니다. data test_data; input ID $ gender $ bmi; datalines; A01 M 24 A01 M 24 A01 M 23.5 A02 M 26 A02 M 25 A02 M 24 A02 M 26.5 A03 M 24 A03 M 25 A04 M 25.5 A05 M 25 A05 M 25.7 A05 M 26 B01 F 24 B01 F 25 B01 F 24.5 B02 F 25 B02 F 25 B02 F 26 B02 F .. 2022. 6. 23.
Univariate 를 이용하여 percentile 구하기 Univariate 를 이용하여 percentile 구하기 Proc univariate 를 이용해서 백분위수(percentile)를 구할 수 있습니다. 제일 작은 값을 0, 제일 큰 값을 100이라고 한다면, 이 데이터의 25분위수는 25가 되고, 50 분위수는 중앙값(median)이 됩니다. S000 ~ S100의 ID를 가지는 0~100까지의 숫자(var_num)를 변수로 가지는 데이터를 생성합니다. data test_Data; length ID $5.; do i=1 to 101; j=i-1; len=length(compress(j)); if len=1 then ID=compress('S')||'00'||compress(j); else if len=2 then ID=.. 2022. 6. 23.
Proc Rank 를 이용한 SAS 순위 정하기 Proc Rank 를 이용한 SAS 순위 정하기 데이터의 순위를 정해서 동일한 데이터셋에 새로운 순위 변수를 만드는 방법을 Proc Rank 를 이용하여 해보겠습니다. 전체 순위를 매기는 것 뿐만아니라 특정 그룹내에서 그룹내 순위매기기 또는 median 기준으로 2개 그룹나누기, Tertile, Quartile, Quintile 등 여러용도로 사용할 수 있는 유용한 SAS Procedure입니다. data test_data; input subject $ gender $ bmi; datalines; A01 M 25.2 A02 F 23.4 A03 F 24.1 A04 M 24.5 A05 M 27.4 A06 M 27.1 A07 F 22.1 A08 F 25.1 A09 F 24.7.. 2022. 6. 23.