【发布时间】:2015-07-07 19:34:55
【问题描述】:
我已经看到很多类似的情况,但实际上并没有解决我遇到的问题。所以我的问题是如何处理函数(例如均值函数)中的向量值,以及如何将向量值放入标题中。我最近从 SAS 切换到 R,所以我有点困惑。
###### parameters #####
nphase1=50
nphase2=1000
varcount=5
meanshift= 0
sigmashift= 1
##### phase1 dataset/ control limits #####
for (i in 1:varcount)
{
assign (paste("x",i, sep=""), (rnorm(nphase1,0,1)))
mean_var[i]=mean(x[i])
std_var[i]=sd(x[i])
Upper_SPC_Limit_Method1_var[i]= mean_var[i] + (3 * std_var[i])
Lower_SPC_Limit_Method1_var[i]= mean_var[i] - (3 * std_var[i])
moving_range_var[i]= abs(diff(x[i]))
MR_mean[i]= mean(moving_range_var[i])
Upper_SPC_Limit_Method2_var[i] =mean_var[i] + (3 * MR_mean[i])
Lower_SPC_Limit_Method2_var[i] =mean_var[i] - (3 * MR_mean[i])
}
我确信我将不得不做一些类似于 (assign(paste("x",i, sep="") 的事情来标记个人的个人限制,但我无法到达那一步没有能力计算for循环内每个变量的平均值。 我要做的是创建 5 个变量,每个变量有 50 个观察值(正常随机分布)。我想取每个变量的平均值和标准差来使用这些数字构建控制限。
感谢您的洞察力!
【问题讨论】:
-
你真正想要达到什么目的?从这个问题来看并不是很清楚。此外,R 有一些强大的 for 循环替代方案(如 apply 系列函数),可能会引起人们的兴趣。