Python-- 列组的均值和标准差

Python-- Mean and Standard Deviation over groups of columns

我正在使用 Python,我有一个 2048 x 2048 像素的黑白 .FIT 图像文件,每个像素都有一个值。我需要找到前 64 列像素值的标准偏差。我的意思是,我需要考虑前 64 列中的每个像素值,然后使用这些值来查找标准偏差。我知道如何找到每列的标准偏差,但我不知道如何为列组做。本质上,在我可以找到前 64 行之后,我还需要为图片的其余部分找到它,这意味着 32 组 64 列。我希望这个问题不会太混乱。谢谢!

像这样用作 numpy 数组:

include numpy as np    
np.std(array)

抓取数组部分的例子:

a = [1 2 3]
a[0:1] = [1]
a[0:2] = [1 2]

也适用于二维(或更高)数组,

a = [[1,2,3,4,5,6],[1,2,3,4,5,6]]
b = np.array(a)
print b[:,:3]
[[1 2 3 4]
 [1 2 3 4]]

试试这个:

np.std(np.concatenate(your_data),axis=0)

哦,如果你想 select 特定的列,请将 your_data 替换为 your_data[[1,2,3,5,6,8,9]] 或其他任何内容你要。做起来更容易,你可以做类似 your_data[range(1,something)+[6,2,4]]