我有兩個我正在合併的數據集(稱爲「趨勢」和「保險」),並且都有類似的變量。其中一個類似的變量是「Race」,除了「趨勢」數據集外,Excel已將其編碼爲字符變量,而在「保險」數據集中,Excel將其編碼爲數字。當然,如果它們不是同一類型,我不能合併這兩個變量,並且我嘗試在「格式」選項下將類型更改爲Excel中的數字。它似乎沒有工作。一旦我用SAS重新導入我的XLS文件,它仍然說「Race」是字符,而不是數字。轉換變量類型後,所有觀察值都下降SAS
於是,我就做轉換的SAS,像這樣:
DATA trends;
new = input(Race, 8.);
drop Race;
RENAME new = Race;
RUN;
這裏的輸出。
NOTE: Numeric values have been converted to character values at the places
given by:
(Line):(Column).
66:13
NOTE: Variable Race is uninitialized.
NOTE: The data set WORK.TRENDS has 1 observations and 1 variables.
NOTE: DATA statement used (Total process time):
real time 0.01 seconds
cpu time 0.00 seconds
但是當我PROC CONTENTS DATA =趨勢;在新數據集中根本沒有觀察結果。應該有超過800個觀察值和超過20個變量,就像我最初將XLS文件導入到SAS時一樣。
這裏是PROC內容輸出看起來像「種族」轉換爲數字後:
Obs Race
1 .
發生了什麼事我所有的意見和其他變量?基本上,現在缺少整個數據集「趨勢」。
除了我指出的錯誤之外,您應該知道可能有更好的方法來處理這個問題(通過修改導入語句和/或以不同方式導入)。在這裏Excel不一定是錯誤的(因爲Excel大多沒有「類型」);它更可能是輸入轉換。隨意就此提出一個單獨的問題,或者直接瀏覽有關導入設置類型的問題。 – Joe