簡體   English   中英

使用 SAS 的統計問題-如何設置以范圍形式給出的輸入?

[英]Statistics problem using SAS- How can I set my input which is given as a range?

在此處輸入圖像描述

我想使用 SAS 代碼來解決這個問題,但我不知道如何設置我的輸入,因為它是作為一個范圍給出的。 另外,我怎樣才能使用這個范圍來制作頻率分布的直方圖。 請幫忙。 謝謝!

您可以使用|直接使用datalines輸入它作為分隔符(我們這樣做是因為工資范圍名稱中有空格)。 sgplot將 plot 直方圖,並且freq=count選項將告訴sgplot每個范圍有多少觀察值。

data have;
    length salary_range $16.;
    infile datalines dlm='|';
    input salary_range$ count;
    datalines;
25,000 to 29,999|12
30,000 to 34,999|23
35,000 to 39,999|37
40,000 to 44,999|19
45,000 to 49,999|15
50,000 to 54,999|9
;
run;

proc sgplot data=have;
    vbar salary_range / freq=count stat=percent;

    label salary_range = 'Salary Range';
run;

在此處輸入圖像描述

實際上,您將擁有原始數據並希望使用format語句來創建您的容器。 例如:

data have;
    do i = 1 to 100;
        salary = rand('normal', 35000, 2000);

        if(salary < 25000) then salary = 25000;
        if(salary > 54999) then salary = 54999;
        output;
    end;

    drop i;
run;

proc format;
    value salaryRange
        25000 - 29999 = '25,000 to 29,999'
        30000 - 34999 = '30,000 to 34,999'
        35000 - 39999 = '35,000 to 39,999'
        40000 - 44999 = '40,000 to 44,999'
        45000 - 49999 = '45,000 to 49,999'
        50000 - 54999 = '50,000 to 54,999'
    ;
run;

proc sgplot data=have;
    histogram salary;

    label salary = 'Salary Range';
    format salary salaryRange.;
run;

暫無
暫無

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

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