2017-03-07 82 views
0

文字と数値の両方の変数を使用して転置したいSASデータセットがあります。 intervalとgroupだけが文字変数で、残りは数値変数です。ただし、proc transposeはすべての変数を文字変数に変換します。転置手続き後に数値変数が文字および文字変数として残るように、以下のプログラムを変更するにはどうすればよいですか?ありがとうございました。SASでのproc transposeでの数値変数の保持方法は?

proc transpose data=sourceh.test out=sourceh.test2; 
var interval group cap rank volatility correlation significance; 
run; 
+1

同じ列に異なるタイプを使用することはできません。 – Reeza

+1

長いデータセットをワイドに変換すると、元のデータセットのすべての行に対して新しいデータセットに列が作成されます。 @Reezaが指摘しているように、これは各列に数字と文字の値が混在していることを意味します。したがって、変数の型は文字でなければなりません。おそらく、いくつかのサンプルデータを投稿し、その結果を欲しいものにすると、標準のトランスポーズとは異なるものが表示されることがあります。 – Longfish

+0

私はロジックを理解しています、ありがとう@ReezaとLongfish。私はchar変数を数値変数に変換しましたが、これは今のところ私の問題を解決しました。ありがとう。 –

答えて

2

2段階で実行できます。

proc transpose data=sourceh.test out=nums prefix=num; 
    var _numeric_; 
    run; 
proc transpose data=sourceh.test out=char prefix=char; 
    var _character_; 
    run; 

FYI:あなたが今得ている数値と文字の変換は、私がVVALUE一斉に呼び出し、便利な機能することができます。

関連する問題