基于当前数组中每个项目的第一个元素创建新数组

问题描述 投票:1回答:1

如果我的术语不正确,请原谅我-我是新来的!

我正在尝试根据数组中每个项目中第一个元素的值来隔离某些条目,并对某些列执行某些操作。这是我正在使用的数据类型的示例:

[[1, 99, 400],
[1, 95, 200],
[2, 92, 100],
[1, 85, 500],
[2, 88, 300]]

我需要针对每种情况分别使用for loopif statement和算术(在第1列中反映为1或2的值)来计算第2列和第3列的均值。

我正在尝试针对每个条件将上述数组拆分为两个单独的数组,然后使用numpy.mean获取这些列的平均值。这就是我希望列表看起来像的样子:

cond1 = [[1, 99, 400], [1, 95, 200], [1, 85, 500]]
cond2 = [[2, 92, 100], [2, 88, 300]]

我一直坚持如何根据第一个元素将这些条件分为两个新数组。这是我在搜寻切片后得到的最远的距离..但我被卡住了!

for x in stim:
    if stim_acc[0]==1.0:
        np.where(stim_acc[0] = 1.0)
        cond1 = [[s,a,rt] for s, a, rt in zip(stim, acc, mrt)]
        print(cond1)

关于stimaccmrt

我有几列长的数据集,从中我将刺激(现在为stim),准确性(现在为acc)和平均反应时间(现在为mrt)隔离到一个新列表中(首先在这篇文章中)。我这样做是这样的:

stim = data[:,1]
 acc = data[:,3]
 mrt = data[:,4]

 stim_acc = [[s, a, rt] for s, a, rt in zip(stim, acc, mrt)]
 print(stim_acc)

我已经抢先命名了新列表stim_acc,因为我预见到它将变成一个列表,用于计算循环中每个条件的准确性。

谢谢,非常感谢您的帮助。

python arrays numpy conditional-statements slice
1个回答
© www.soinside.com 2019 - 2024. All rights reserved.