首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Minitab:在宏中计算样本方差

Minitab:在宏中计算样本方差
EN

Stack Overflow用户
提问于 2016-01-16 23:31:21
回答 1查看 262关注 0票数 0

因此,我在minitab的C1中有一组样本,我从这些数据中进行了200个重采样,并将其存储在C2-C201中。现在,我想计算每一列的样本方差,然后将结果保存在单独的列中。我可以让它计算每一列的样本方差,但保存结果时遇到了问题。这是我当前的宏:

代码语言:javascript
复制
GMACRO          #Starts the global macro
Resample        #Names the macro
DO K1=2:201
Sample 16 'Data' CK1;
Replace.        #Resampling
Name c202 "Variance"
Statistics CK1;     # Calculate S^2 
  Variance 'Variance'.
ENDDO
ENDMACRO        #Ends the macro

这就完成了工作,但它只是一遍又一遍地覆盖相同的单元格。对它来说,最好的做法是像c202(K1)一样为每次迭代保存它,但我不确定如何实现这一点。

EN

回答 1

Stack Overflow用户

发布于 2016-01-20 22:13:05

嗯。我有很多方法可以改变这个宏。

出现上述问题的原因是,Statistics的Variances子命令将结果存储在的整个列中,从而覆盖了内容。如果你真的想把200个单独的子样本存储在单独的列中,那么应该这样做:

代码语言:javascript
复制
GMACRO          #Starts the global macro
Resample        #Names the macro
Name c202 "Variance" # no need to name this column 200 times!
DO K1=2:201
  Sample 16 'Data' CK1;
    Replace.        #Resampling
  Statistics CK1;     # Calculate S^2 
    Variance C203.  # into row 1 of temporary column C203
  Stack 'Variance' C203 'Variance' # append to end of Variance
ENDDO
erase K1 c203  # clean up
ENDMACRO        #Ends the macro

如果您想存储子样本,但又乐于将它们存储在两列中,那么这样会更简洁:

代码语言:javascript
复制
GMACRO          #Starts the global macro
Resample        #Names the macro
Name C2 'Sample number' c3 'Sample data'
set 'Sample number' # populate Sample number
(1:200)16
end
DO K1=1:200 
  Sample 16 'Data' c4;
    Replace.        #Resampling
  Stack C4 'Sample data' 'Sample data' # append to Sample data
ENDDO
Name c4 "Variance"
Statistics 'Sample data';
  By 'Sample number';
  Variance 'Variance'.
ENDMACRO        #Ends the macro

当然,带替换的200x16样本与带替换的3200样本是相同的,所以更整洁--也更快--将是:

代码语言:javascript
复制
GMACRO          #Starts the global macro
Resample        #Names the macro
Name C2 'Sample number' c3 'Sample data'
set 'Sample number' # populate Sample number
(1:200)16
end
Sample 3200 'Data' 'Sample data';
replace.
Name c4 "Variance"
Statistics 'Sample data';
  By 'Sample number';
  Variance 'Variance'.
ENDMACRO        #Ends the macro
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34830426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档