2017-05-19 25 views
0

私は患者診断のデータセットを1行に1つの診断コードで作成し、患者の複数の診断を行っています。各患者には固有のpatientIDがあります。私はまた、これらの患者の年齢、人種、性別などのデータを持っています。SAS:複数の患者の複数の診断複数の患者の診断

PROC FREQ、Logistic、Univariateなどを使用して同じ患者であることをSASに示す方法を教えてください。

これは、データがどのように見えるかの例である:私は、特定のラボ(関係なく、肯定的な結果の)を持っていたすべての患者に関するデータ、並びにその診断のすべてを与えられた

patientID diagnosis age gender lab 
1   15.02  65 M  positive 
1   250.2  65 M  positive 
2   348.2  23 M  negative 
2   282.1  23 M  negative 
3     50 F  positive 

、これらはそれぞれ異なる行に表示されます(SASとは異なる観察として)。まず、私はIF検査を使用することを計画している検査室で陰性の結果を有するすべての患者を除外する必要があります。研究室は、患者が疾患Xを有するかどうかを決定する。一部の患者は、患者#3のような疾患X以外の追加の疾患を有しない。

は、私が実行したい分析:

  1. はPROCのFREQを使用して、各疾患の頻度を計算します。
  2. PROC FREQ chi squareを使用して各診断の年齢および競合関係を特徴付ける。
  3. PROCロジスティックは、疾患Xの上に

感謝を追加疾患を発症の危険因子(年齢、人種、性別など)を決定するために!

+0

に依存します。場合によっては、繰り返し測定と見なすことができ、時にはそうでない場合もあります。ほとんどあなたはそれをあなた自身の中で考慮する必要があります。あなたの質問はいくつかのprocsを参照しているので、今は広範囲であり、私たちは一つの答えを提供することはできません。質問を絞り込むと、このようなデータをどのように処理するかに関するいくつかの例を提供することができます。 – Reeza

+0

@Reeza、データステップの同じ行に各患者の診断を組み合わせることは可能ですか?純粋な断面分析を行っているので、これらを複数の測定値として扱うわけではありません。 – ybao

+0

患者ごとにレコードが1つになるようにデータセットを転置することができます。変数Diagnosis1 Diagnosis2 ... DiagnosisN。しかし、通常、現在の構造は扱いが簡単です。 Reeza氏は、実行したい特定の分析を記述することができれば、人々があなたを手助けするのがより簡単になると述べています。 – Quentin

答えて

2

ご質問に対する回答は、デフォルトではできません。しかし、データを処理しているときに、簡単に説明することができます。それを長く保つIMOは簡単です。

あなたは上記の質問を多すぎるので、私はただ1つに答えて、病気の人xの数を数えます。これは、SQL

Proc sql; 
Create table want as 
Select diag, count(distinct patientID) 
From have 
Group by diag; 
Quit; 

はるかに簡単であることを

Proc sort data = have out = unique_disease_patient nodupkey; 
By patientID Diag; 
Run; 


Proc freq data = unique_disease_patient noprint; 
Table disease/out = disease_patient_count; 
Run; 

注私はあなたが探索的分析を除き、実際にこれを行う可能性は低いだから、これは宿題であると仮定しています。

関連する問題