簡體   English   中英

SAS:無法將變量添加到數據集

[英]SAS: Unable to add variable to data set

我有一個數據集,正在嘗試使用現有變量添加四個新變量。 我不斷收到一條錯誤消息,提示代碼不完整。 我很難看到它不完整的地方。 我該如何解決?

data dataset;
 input  ID $
        Height 
        Weight 
        SBP 
        DBP 
        WtKg         = Weight/2.2;
        HtCm         =  Height/2.4;
        AveBP        = DBP + (SBP - DBP)/3;
        HtPolynomial = (2*Height)**2 + (1.5*Height)**3;
 
datalines;
001 68 150 110 70
002 73 240 150 90
003 62 101 120 80
run;

您沒有以分號結束您的input語句。 input從外部數據中讀取變量(在這種情況下,數據datalines語句的內聯數據)。 新變量不會按照您指定的方式在input中創建。

使用input讀取數據的五個變量。 之后,根據這五個讀入變量創建新變量:

data dataset;
    input  ID $
           Height 
           Weight 
           SBP 
           DBP
    ; 

    WtKg         = Weight/2.2;
    HtCm         = Height/2.4;
    AveBP        = DBP + (SBP - DBP)/3;
    HtPolynomial = (2*Height)**2 + (1.5*Height)**3;
 
    datalines;
001 68 150 110 70
002 73 240 150 90
003 62 101 120 80
;
run;

糾正 2 個錯誤應該可以解決這個問題:

  1. 在從數據行讀取的最后一個字段后添加分號,即 DBP。

  2. (此問題的先前版本使用 ^ 符號表示指數。)不要使用 ^ 來提高某物的冪,而是使用 **

    作為參考,此處描述了 SAS 算術運算符。

在進行上述 2 次更正后,我運行了下面的修改后的代碼,沒有任何錯誤。

data dataset;
 input  ID $
        Height 
        Weight 
        SBP 
        DBP; 
        WtKg         = Weight/2.2;
        HtCm         =  Height/2.4;
        AveBP        = DBP + (SBP - DBP)/3;
        HtPolynomial = (2*Height)**2 + (1.5*Height)**3;
 
datalines;
001 68 150 110 70
002 73 240 150 90
003 62 101 120 80
run;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM