回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我整个下午都在试着编写代码。有什么建议吗</p>
<p>有两个列表:Rep是样本1和样本2的复制品,OV是每个复制品的观察值。我需要做的是,对OV中属于样本1的所有值求和,然后将结果平方并除以n,然后对样本2求所有值,最后对两个值求和。(这是方差分析公式“平方和”的第一部分,我还不能上传公式的图片。(</p>
<p>为了测试我的代码,我创建了两个简单的列表:</p>
<pre><code>Rep=[1,1,1,1,1,1,2,2,2,2,2,2]
OV=[1,2,3,4,5,6,7,8,9,10,11,12]
</code></pre>
<p>m是样本数,n是每个样本的重复数。
我已经创建了另一个样本编号列表。
这是我的代码尝试</p>
<pre><code>m=2
n=6
sum=0
ObsSum=0
a=0
b=0
Sam=[1,2]
for i in OV:
if Rep[a]==Sam[b]:
sum=sum+OV[a]
a=a+1
print(i,a,Sam[b],sum)
ObsSum=ObsSum + (((sum)**2)/n)
else:
b=b+1
sum=0
print(ObsSum)
</code></pre>
<p>这就是我得到的,有一个值,7,第一个对应于样本2,它没有被考虑。
有什么建议吗</p>
<pre><code>1 1 1 1
2 2 1 3
3 3 1 6
4 4 1 10
5 5 1 15
6 6 1 21
8 7 2 7
9 8 2 15
10 9 2 24
11 10 2 34
12 11 2 45
1614.3333333333333
</code></pre>
<p>我是Python新手,这是我最好的尝试。
先谢谢你</p>