【问题标题】:translate scipy.stats.binned_statistic_2d's binnumber to a x,y bin将 scipy.stats.binned_statistic_2d 的 binnumber 转换为 x,y bin
【发布时间】:2015-07-29 18:49:56
【问题描述】:

scipy.stats.binned_statistic_2d 的输出之一是binnumber,根据doc,它是“一个整数,表示此观测值所在的bin。”但是,我不知道如何使用它来获得实际的 x,y bin。例如:

import numpy as np
import scipy.stats
import matplotlib.pyplot as plt

#Setup random data
data = np.random.randn(200,3)


#Specify limits of binned data
xmin = -3.; xmax = 3.
ymin = -3.; ymax = 3.

bins, xb, yb, binnum = scipy.stats.binned_statistic_2d(data[:,0],
                            data[:,1],
                            data[:,2],
                            statistic = np.std,
                            bins=10,range=[[xmin,xmax],[ymin,ymax]])

所以,因为我要求它按 10x10 分类,所以我有 100 个分类。这在检查bins 时会反映出来,因为它有 10 行,每行 10 个元素。但是,我不知道 binnumber 指的是什么,因为当我检查 binnum 时,我会得到一个整数数组,其整数可达 120 或 130。那么这些数字可能指的是哪些 bin?我希望能够获取 binnumber 的一个元素并在bins 中获取该 bin 的值,但我不知道如何理解 scipy 的输出。

【问题讨论】:

    标签: python scipy binning


    【解决方案1】:

    传递bins=10 定义了 10 个 bin 加上每个维度边界的 2 个 bin。在您的情况下,一个用于x < -3,另一个用于x >= 3

    因此您有效地获得了12x12 bins,bin 编号范围为0 to 143

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-03-06
      • 1970-01-01
      • 1970-01-01
      • 2022-11-13
      • 2020-09-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多