数组与整数的乘法

array multiplication with integer

我在 python 中有一个二维数组“pop”。我想将第一列的每个元素乘以一个整数。我使用了以下代码

temp[i] = b*pop[i,0]+a*pop[i,1] 

但它返回错误“列表索引必须是整数或切片,而不是元组”

import random
from random import sample
rows=20
a,b = 0.5,1 
pop=list(zip(sample(range(1, 100000), rows),sample(range(1, 100000), rows)))
profit = sample(range(1, 100000), rows)
#print(pop,profit)
mycombined=list(zip(pop,profit))
combined_array = np.asarray(mycombined)

print(combined_array)

m = len (combined_array) 
it = 1500 
#alpha = 0.01 

J=0
for i in range(1,m,1): 
     bpop=combined_array[i][0][0]
     apop=combined_array[i][0][1]
     aprofit=combined_array[i][1]
     temp=(bpop+apop-aprofit)**2
     J=J+temp

现在你有了一个列表列表,可以使用列表理解来更改值

  1. pop 包含一个二元组
  2. profit 是一个随机数列表
  3. 结果是列表或元组的列表