2017-10-04 2 views
0
proc sort data = group; 
    by studystyle; 
run; 
proc means data= group mean; 
    var test1 test2; 
    by studystyle; 
    output out = groupmeans mean = groupmeans; 
run; 

このように、学生ID、test1スコア、test2スコア、およびそれらのスタディスタイルを含む学生グループのこのデータセットがあります。前のものの平均を含む2つのsasデータセットを作成する方法

次に、これらのテストスコアの平均データセットをスタディスタイルでソートして作成しました。

2つのテストに基づいて2つの新しいデータセットを作成しようとしていますが、両方のデータセットにスタディスタイル、平均、テスト番号を含める必要があります。

私は、前のデータセットを使用するためにsetコマンドを使用して新しいデータセットを作成することから始めます。しかし、私は実際にどのように各スタディスタイルのテスト手段をつかむのか分かりません。代わりに私は手動で平均値を配置するためにデータラインを使用しましたが、以前のデータセット自体からそれらの値を取得することをお勧めします。

data newgroup1; 
set groupmeans; 
drop test1 test2 _type_ _freq_ _stat_; 
input StudyStyle AVG Testnum; 
datalines; 
1 51.6875 1 
2 49.27273 1 
3 49.09091 1 
; 
run; 

data newgroup2; 
set groupmeans; 
drop test2 test1 _type_ _freq_ _stat_; 
input StudyStyle AVG Testnum; 
datalines; 
1 51.5 2 
2 65.2727 2 
3 90.5454 2 
; 
run; 

data newgroup; 
set newgroup1 newgroup2; 
run; 
+0

https://github.com/statgeek/SAS-Tutorials/blob/master/add_average_value_to_dataset – Reeza

+1

@Reeza ...あなたのgithubのことですか? SASスクリプトを拡張子:**。sas **で保存して、美しい色のsasコード形式を取得する必要があります:[例](https://github.com/ParfaitG/RANDOM_DATA/blob/master/RandomData.sas)。 – Parfait

+0

@mohb ...あなたのニーズを明確にするデータの例を示してください。 – Parfait

答えて

0

私が正しくあなたの問題を理解していれば、あなたが変更する必要があるすべては別途TEST1とTEST2の手段を作成し、2つのデータセットを作成することです。以下のコードを試してみてください。

proc sort data = group; 
by studystyle; 
run; 

proc means data= group mean; 
var test1 test2; 
by studystyle; 
output out = groupmeans mean(test1) = mtest1 mean(test2) = mtest2; 
run; 

data newgroup1 (keep=studystyle mtest1) newgroup2(keep=studystyle mtest2) ; 
set groupmeans; 
run; 
関連する問題