使用numpy和if语句

z18hc3ub  于 2023-10-19  发布在  其他
关注(0)|答案(1)|浏览(76)

我想创建一个2D numpy数组,我想只得到两个值相同的数组的平均值。例如,当它是[1,1]或[2,2]等时,值在1和6之间。这是我到目前为止的代码。但是我在if语句部分卡住了。

q5=np.random.randint(7,size=(15,2))
print(q5)
for i in q5:
    if i[0]=i[1]:
    # I am clueless on how to continue
vs3odd8k

vs3odd8k1#

在代码中,您在if条件中犯了语法错误。比较运算符是==而不是=
但是作为答案,使用列表解析来选择所需的数组,然后计算所选数组的平均值。
下面是你可以用来解决这个问题的代码:

import numpy as np

q5 = np.random.randint(1, 7, size=(15,2))
print(q5)

identical_values = [i for i in q5 if i[0] == i[1]]

if identical_values:
    mean_value = np.mean(identical_values)
    print(mean_value)
else:
    print("There isn't any row with identical values.")

相关问题