私は2つの異なるもの(名前とアドレス)である必要がありますが、1つの変数でlastnames、firstnames、addresses(その順番)を含む乱雑なデータセットを持っています。 私は、このようなSASは長い変数を2つの変数に分割します
address= substr(person_name,-1,length(person_name)-length(newname)) ;
または
address= scan(person_name,3,length(person_name)) ;
として
data commainvest (keep=appln_id person_id person_name lastname firstnames newname address);
set commainvest;
lastname=scan(person_name,1,',') ;
firstnames=scan(person_name,2,',') ;
newname=catx(', ',lastname,firstnames) ;
address=substr(person_name,1,length(person_name)-length(newname)) ;
run;
などを試してみましたが、それは常に間違ったアドレスの一部をカットするか、最後の列のすべての情報を残します。 実際に最後と最初の名前を削除する必要はありませんが、最初から一緒に残す方法があります。私のデータは、それらの間のカンマで区切られています。 は、私はあなたが新しいaddress
変数のデフォルトの長さのために切り捨てられたデータを取得していると考えているあなたの助けのおかげ アンナ
データの例を表示できますか? –
データの行を見ることができれば、何が起こっているのかがはるかに分かりやすくなります。 –