如何在python中的另一个numy数组中保存numpy数组

时间:2017-11-27 14:22:13

标签: python numpy

我需要在另一个numpy数组的给定位置保存一个numpy数组

import numpy as np
spotsAreaArray=np.zeros(30)
weatherConditions=np.zeros(30)

def saveInitialSpotId(spotId,spotArea,humidityReading,temperatureReading,lightReading):
    #Store initial area of the spot at the respective location of the spot id
    if spotsAreaArray[spotId] == 0:
        spotsAreaArray[spotId]=spotArea
        if weatherConditions[spotId] == 0:
            sensorReadings=np.array(humidityReading,temperatureReading,lightReading)
            weatherConditions[spotId]=sensorReadings
            print(weatherConditions)
    print(spotsAreaArray)

saveInitialSpotId(0,23,33,33,33)
saveInitialSpotId(0,25,55,55,55)
saveInitialSpotId(1,24,44,44,44)
saveInitialSpotId(1,99,99,99,99)

我需要做的是,将sensorReadings数组值存储在weatherConditions数组中给定的spotId位置。但这不起作用。请给我一个指导来实现这个目标吗?

1 个答案:

答案 0 :(得分:0)

np.array不会采用3个位置参数。使您的读数成为单个列表而不是一系列参数将解决问题。

sensorReadings=np.array([humidityReading,temperatureReading,lightReading])

只是为了安全起见:你的数组初始化也会产生麻烦,因为你会遇到:

  

ValueError:使用序列设置数组元素。

例如,可以通过将数组初始化为:

来解决
weatherConditions=np.zeros((30,3))