0

PROC FREQ を使用して、指定されたすべてのグループをカウントしました。私のコードが PROC FREQ に入るのに正しいかどうかわかりません。データを使用しましたが、リストが乱雑に見えます。すべての情報を適切な名前グループに分類するために作成しましたが、PROC FREQ の結果は空に見えますが、タイトルが残り、Frequency Missing=1 と記載されています。明らかに、私はこのコードを正しく行いません。

変更なしの Proc Freq (ただし、乱雑に見えます):

American Dialect Frequency

? 1
Creole 256
Craole 1
Californian 603
Chicano 302
Chiano 2
Chiaco 1
Midwest 423
Missing
New York City 409
NYC 35
Other 90
Pacific Northwest 128
Pittsburghese 15
Pittsburhese 2
San Francisco 78
Won't say 12

データを変更します...これが私のコードです:

PROC SORT data=Speechdata; by Dialect;run;
Data Speechdata2;
set= Speechdata;
If substr(Dialet,1,2)='Cr' then Dialect = 'Creole';
    else if substr(Dialect,1,2)='Ca' then Dialect = 'Californian';
    else if substr(Dialect,1,2)='Ch' then Dialect ='Chicano';
    else if substr(Dialect,1,3)='Mid' then Dialect ='Midwest';
    else if substr(Dialect,1,1)='N' then Dialect ='New York City';
    else if substr(Dialect,1,2)='Sa' then Dialect ='Californian';
    else if substr(Dialect,1,2)='Pi' then Dialect ='Pittsburghese';
    else if substr(Dialect,1,2)='Pa' then Dialect ='Pacific Northwest';
    else if substr(Dialect,1,1)='O' then Dialect ='Other';
    else if substr(Dialect,1,1)='NA' then Dialect ='Missing';
    else Dialect ='Missing';
    run;

PROC FREQ data=Speechdata2;
table Dialect/nocum nopercent;
title 'Dialect Frequencies';
run; 
4

2 に答える 2

1

表示されているコードが送信したものとまったく同じである場合は、"Speechdata" という名前の初期化されていない変数から "set" という名前の変数を作成した迷い等号があります。ログには、「1 つの観測と 3 つの変数を使用してデータセット SPEECHDATA2 を作成しました」のようなメッセージが表示されているはずです。

その抽出文字を削除すると、問題ありません。

Data Speechdata2;
   set Speechdata;
   /* and so on */

有用な情報については、常にログを確認してください。

于 2013-10-05T22:40:03.623 に答える
0

ここに等号がありますset= Speechdata

経験則として、ログを確認してください。

于 2014-02-22T06:39:21.190 に答える