【问题标题】:How to calculate mean across two variables in SAS?如何计算SAS中两个变量的平均值?
【发布时间】:2018-06-01 14:31:13
【问题描述】:

我有一个数据集,其中包含无铅普通汽油(每加仑)、整个大鸡蛋(每打)和全脂牛奶(每加仑)的平均价格数据。该文件中的变量是年、月、价格和商品类型。

Year Month  Price   Commodity
2004    1   1.592   Gas
2004    2   1.672   Gas
2005    1   1.766   Gas
2005    2   1.833   Gas
2006    1   2.009   Gas
2006    2   2.041   Gas
2004    1   1.95    Egg
2004    2   1.979   Egg
2005    1   1.97    Egg
2005    2   1.951   Egg
2006    1   2.032   Egg
2006    2   2.21    Egg
2004    1   2.879   Milk
2004    2   2.814   Milk
2005    1   2.786   Milk
2005    2   2.906   Milk
2006    1   3.374   Milk
2006    2   3.574   Milk

谁能帮我创建一个包含每种商品每年平均价格的数据集?

我能够创建一个包含每年或每种商品的平均价格的数据集,但无法计算每种商品的每年平均价格。

注意:我使用的是 SAS 9.4 版本

【问题讨论】:

  • 分享所需的输出。另外,附上您尝试过的任何内容。
  • 我能够解决这个问题。感谢您与我们联系!
  • 太棒了!告诉我们答案
  • @Richard 'PROC 排序数据 = 价格;按年份商品;跑;程序 sql;创建表 avg 作为选择年份,商品,AVG(价格)作为价格组按年份,商品的 avgprice;跑; Proc 排序数据=avg;按商品;运行;'

标签: sas


【解决方案1】:

根据您的描述,这是一个简单的代码,可以满足您的要求:

proc sql;
  select mean(price) as average, year, commodity
  from have
  group by commodity, year
  order by commodity, year;
quit;

这给出了输出:

 average year commodity 
 1.9645  2004   Egg 
 1.9605  2005   Egg 
 2.121   2006   Egg 
 1.632   2004   Gas 
 1.7995  2005   Gas 
 2.025   2006   Gas 
 2.8465  2004   Milk 
 2.846   2005   Milk 
 3.474   2006   Milk 

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-07
    • 2021-06-14
    • 2018-10-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-23
    相关资源
    最近更新 更多