我一直在尝试使用此代码更新两个列表,其中numpy已导入np,其中spkCount是一个8 x 10 numpy数组,包含1.0或0.0:
mSpikes = []
stdSpikes = []
for line in spkCount:
if line[10:-1].all() == 0:
sample = line[0:9]
else:
sample = line
m = np.mean(sample)
std = np.std(sample)
mSpikes.append(m)
stdSpikes.append(std)
Run Code Online (Sandbox Code Playgroud)
当我检查mSpikes和stdSpikes,我发现它们包含以下数据:
In [52]: stdSpikes
Out[52]: [3.2317865716108862]
In [53]: mSpikes
Out[53]: [53.333333333333336]
Run Code Online (Sandbox Code Playgroud)
任何人都可以解释为什么会发生这种情况并提出一个行动方案吗?谢谢.
编辑:我应该提一下,我检查了for循环是否正确迭代,它是.if/else语句也按预期处理.问题确实似乎与list.append的numpy交互有关...
.append()不会覆盖它所操作的列表.您的循环似乎更有可能只运行一次,或者与其余代码分开运行.
| 归档时间: |
|
| 查看次数: |
2415 次 |
| 最近记录: |