2016-05-10 2 views
-1

私の仕事を助けてください。SASでの連結

Name Age Height Eyes 
Dan 25 174 Blue 
Dan 54 165 Black 
Jane 33 160 Blue 
Kate 19 170 Green 

私が必要:

Name Characteristic 
Dan  25 
     174 
     Blue 
Dan  54 
     165 
     Black 
Jane 33 
     160 
     Blue 
Kate 19 
     170 
     Green 

私は連結でそれを行うにしようと試み:

Characteristic=Age||Height||Eyes 

しかし、それは、カラムの特性から1行になりますが、ではない:私は問題を抱えています

Name Characteristic 
Dan 25 174 Blue 
Dan 54 165 Black 
Jane 33160 Blue 
Kate 19 170Green 

私は知っていたこの瞬間を解決するために分割を使用する必要があります。助けてください助けてください

+0

レポートや表として必要ですか?これは連結問題ではありません。 – Reeza

+0

私はprocレポートでそれを行う必要があります。私は、列の特性を持つ新しいデータベースを作成し、連結を使用してレポートを作成しようとしました。 – Hanna

+0

これは実際に数回前に尋ねられました。教科書の質問と思われる。例えばhttp://stackoverflow.com/questions/36357332/i-have-an-observation-and-i-need-to-make-a-column-with-sas – Jetzler

答えて

0

あなたはそれを1つのフィールドにするために、それをすべて文字に変換する必要があります。 data _null_手順を使用してレポートを作成することもできます。

ここでは、データを1つのフィールドに転記して、procレポートを使用する方法を説明します。これはトランスポーズの問題であり、連結ではありません。

data have; 
input Name $ Age Height Eyes $; 
cards; 
Dan 25 174 Blue 
Dan 54 165 Black 
Jane 33 160 Blue 
Kate 19 170 Green 
; 
run; 

data want; 
set have; 
characteristic = put(age, 8. -l); output; 
characteristic = put(height, 8. -l); output; 
characteristic = Eyes; output; 
drop age height eyes; 
run; 

テキストファイルまたは異なる出力、これはあなたが望むかもしれ作成された場合は、次の

data _null_; 
set have; 
file '/folders/myfolders/want.txt' dlm=" "; 
put Name "09"x Age; 
put "09"x Height; 
put "09"x Eyes; 
run; 

希望に役立ちます!

+0

ポイントはすべての特性です:年齢の高さの目=特性 - 1つのセルにする必要があります。 – Hanna

+0

データが正しい構造になったら、procレポートはそれを達成できませんか?私はあなたが報告書やテーブルが必要かどうか尋ねました。あなたのソリューションは、出力先、使用しているもの、テキストファイル、HTML、RTF、PDFに依存しますか?この構造はSASデータセットには意味がありません。 – Reeza