gpt4 book ai didi

python - 根据当前数组中每个项目的第一个元素创建新数组

转载 作者:太空宇宙 更新时间:2023-11-03 20:17:06 25 4
gpt4 key购买 nike

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

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

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

我需要分别使用 for 循环if 语句 和算术,针对每个条件(反射(reflect)在第 1 列中)找出第 2 列和第 3 列的方法,其中值为 1 或 2)。

我尝试将上面的数组拆分为每个条件的两个单独的数组,然后使用 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)和平均 react 时间(现在是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,因为我预见到它会变成一个计算循环中每个条件的准确性的列表。

谢谢,非常感谢任何帮助。

最佳答案

据我了解,您想按索引[0]的值将列表拆分为两个列表。如果为 1,则添加到 cond1 的列表,否则添加到 cond2 的列表。您可以使用以下代码来实现:

cond1=[]
cond2=[]
for item in listoflists:
if item[0] == 1:
cond1.append(item)
else
cond2.append(item)

关于python - 根据当前数组中每个项目的第一个元素创建新数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58384506/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com