0

作为一个python新手,我需要一点帮助。我有一个包含 100 行和 100 列的数组。每个位置代表一个温度值。我现在想计算整个数组的平均值(到目前为止我已经有了),然后创建一个新数组,其尺寸与第一个数组相同,并且每个位置都有标准偏差。最后,我想得到一个数组,每个位置与平均值的偏差,所以我想知道每个值与平均值相差多远。我希望你明白我的意思?为了更好地理解:阵列是房屋的红外热成像图像。通过计算标准偏差,我想获得图像中最好的反应/敏感像素。也许有人以前做过这样的事情。最后我想导出文件,这样我就得到了一个与红外图像相似的图像。

导入文件并计算平均值,如下所示:

data_mean = []

my_array = np.genfromtxt((line.replace(',','.') for line in data),skip_header=9,delimiter=";")

data_mean.append(np.nanmean(my_array))

然后我需要计算数组中每个位置的标准偏差。

非常感谢您的帮助!

4

2 回答 2

0
data_mean = np.mean(my_array) #gets you the mean of the whole array

返回一个数组,其中每个值都是数据的平均值

meanArray = np.ones(my_array.shape)*data_mean 

variationFromMean = my_array - meanArray

这是你要找的吗?

于 2015-08-25T13:31:06.760 回答
0

如果您将数据保存为数组格式,这是一个解决方案:

import numpy as np

#Find the mean of the array data values
mean_value = np.mean(data_mean)

#Find the standard deviation of the array data values
standard_deviation = np.std(data_mean)

#create an array consisting of the standard deviations from the mean
array = data_mean/standard_deviation
于 2015-08-25T15:52:52.880 回答