python - 如何在 numpy 数组中使用 for 循环?

标签 python arrays numpy for-loop scikit-learn

我有这样一段代码

#predicitng values one by one 
regr = linear_model.LinearRegression()
predicted_value = np.array([ 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32])
predicted_value =  predicted_value.reshape(-1,1)


#mt
regr.fit(x, y)
predicted_values = regr.predict(predicted_value)
predict_outcome = regr.predict(predicted_value)
predictions = {'predicted_value': predict_outcome}
mmt = np.mean(predict_outcome)

#ht
regr.fit(x, ht)
predicted_values = regr.predict(predicted_value)
predict_outcome = regr.predict(predicted_value)
predictions = {'predicted_value': predict_outcome}
mht = np.mean(predict_outcome)

在这里代替这个:

predicted_value = np.array([ 9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32])

我如何设置从 9 到 32(或 x 到 y)的范围,这样我就可以避免输入所有数字。如果使用 for 循环完成,如何在这种情况下应用它

最佳答案

不需要使用循环。您可以使用 numpy.arange([start, ]stop, [step, ])生成一系列数字。

在你的情况下:

predicted_value = np.arange(9, 33)  # Note the 33 if you want 9..32

如果你真的想使用循环,可以选择使用 list comprehension :

predicted_value = np.array([i for i in range(9, 33)])

或者一个显式循环,这将是最可怕的:

predicted_value = np.empty(33 - 9)
for k, i in enumerate(range(9, 33)):
    predicted_value[k] = i

关于python - 如何在 numpy 数组中使用 for 循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42620417/

相关文章:

python - 在 Python 中动态导入文件

javascript - 如何在数组内的 JavaScript 字符串中添加制表符

python - 将 'int' 转换为 pytorch 'Variable' 会出现问题

python - 查找数组中下一个最大值的更快方法

python - 在 Linux 上的网络摄像头视频捕获期间获取静止帧

python - 如果我 fork 一个有守护线程的进程会发生什么?

java - 无法将图像加载到缓冲图像二维数组中

Python - 样本大小变化时从数组中采样数据的快速方法

python - 如何使用PIL将灰度变成假色?

javascript - 具有多个数组映射的 JQuery 数组