数组与整数的乘法
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
现在你有了一个列表列表,可以使用列表理解来更改值
- pop 包含一个二元组
- profit 是一个随机数列表
- 结果是列表或元组的列表
我在 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
现在你有了一个列表列表,可以使用列表理解来更改值
- pop 包含一个二元组
- profit 是一个随机数列表
- 结果是列表或元组的列表