将 scipy.stats.gaussian_kde 与二维数据一起使用

2023-11-21

我正在尝试使用the scipy.stats.gaussian_kde class把一些离散的经纬度信息采集到的数据进行平滑处理,所以最后看起来有点像等高线图,密度高的就是峰,密度低的就是谷。

我很难将二维数据集放入gaussian_kde班级。我已经尝试弄清楚它如何处理一维数据,所以我认为二维数据应该是这样的:

from scipy import stats
from numpy import array
data = array([[1.1, 1.1],
              [1.2, 1.2],
              [1.3, 1.3]])
kde = stats.gaussian_kde(data)
kde.evaluate([1,2,3],[1,2,3])

也就是说我有 3 分[1.1, 1.1], [1.2, 1.2], [1.3, 1.3]。我想使用 1 到 3 进行核密度估计,在 x 和 y 轴上使用宽度 1。

创建 gaussian_kde 时,它​​一直给我这个错误:

raise LinAlgError("singular matrix")
numpy.linalg.linalg.LinAlgError: singular matrix

查看源代码gaussian_kde,我意识到我思考数据集含义的方式与计算维度的方式完全不同,但我找不到任何示例代码来显示多维数据如何与模块配合使用。有人可以帮我提供一些示例使用方法吗gaussian_kde多维数据?


这个例子似乎正是您正在寻找的:

import numpy as np
import scipy.stats as stats
from matplotlib.pyplot import imshow

# Create some dummy data
rvs = np.append(stats.norm.rvs(loc=2,scale=1,size=(2000,1)),
                stats.norm.rvs(loc=0,scale=3,size=(2000,1)),
                axis=1)

kde = stats.kde.gaussian_kde(rvs.T)

# Regular grid to evaluate kde upon
x_flat = np.r_[rvs[:,0].min():rvs[:,0].max():128j]
y_flat = np.r_[rvs[:,1].min():rvs[:,1].max():128j]
x,y = np.meshgrid(x_flat,y_flat)
grid_coords = np.append(x.reshape(-1,1),y.reshape(-1,1),axis=1)

z = kde(grid_coords.T)
z = z.reshape(128,128)

imshow(z,aspect=x_flat.ptp()/y_flat.ptp())

enter image description here

显然,轴需要修理。

您还可以使用以下命令绘制数据散点图

scatter(rvs[:,0],rvs[:,1])

enter image description here

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 scipy.stats.gaussian_kde 与二维数据一起使用 的相关文章

  • python 中使用 scipy 截断正态分布

    我正在尝试使用截断正态分布scipy在Python3 我想做一些简单的事情 绘制以 0 5 为中心 范围从 0 到 1 的截断法线的 pdf 我有以下代码行 from scipy import truncnorm import matplo
  • 逆 Box-Cox 变换

    我在用SciPy 的 boxcox 函数 http docs scipy org doc scipy dev reference generated scipy stats boxcox html执行一个Box Cox 变换 http en
  • curve_fit 的限制值(scipy.optimize)

    我正在尝试使用 curve fit 使用以下函数作为输入将逻辑增长曲线拟合到我的数据 def logistic x y0 k d a b if b gt 0 and a gt 0 y k pow 1 np exp d a b x 1 b y
  • scipy.io.loadmat 嵌套结构(即字典)

    使用给定的例程 如何使用 scipy 加载 Matlab mat 文件 我无法访问更深的嵌套结构以将它们恢复到字典中 为了更详细地介绍我遇到的问题 我给出了以下玩具示例 load scipy io as spio a b c d 3 my
  • PHP foreach 数组与 stdClass 对象

    我需要帮助尝试获取数组和 stdClass 对象内的值 仅供参考 我正在使用 foursquare API 我有这样的事情 fsq groups venues gt response gt groups echo pre print r f
  • 如何将多项式拟合到带有误差线的数据

    我目前正在使用 numpy polyfit x y deg 将多项式拟合到实验数据 然而 我想拟合一个基于点误差使用加权的多项式 我已经发现scipy curve fit http docs scipy org doc scipy refe
  • 更换色谱柱时出现稀疏效率警告

    def tdm modify feature names tdm non useful words kill stampede trigger cause death hospital minister said told say inju
  • 拟合泊松直方图

    I am trying to fit a curve over the histogram of a Poisson distribution that looks like this 我修改了拟合函数 使其类似于泊松分布 其中参数 t 作
  • print_r 的替代方案(仅显示最多 2 3 个键)

    我有一个multi dimensional array有 200 个键 每个键有 3 到 5 个数组 我想知道有什么方法可以只看到有限的部分 即最多 3 或 4 个键 因为如果我使用print r desiredArray 然后花费了太多时
  • 沿数组中的 n 个维度之一选择

    我在 R 中有一个数组 由如下函数创建 A lt array data NA dim c 2 4 4 dimnames list c x y NULL NULL 我想沿一维进行选择 因此对于上面的示例我将有 A x dim A x 1 4
  • Scipy max_filter 太疯狂了

    我对 scipy 的 Maximum filter 函数有一个小问题 但没有得到解决方案 我有三个不同的 numpy 数组 a np array 152 nan 30 nan nan nan nan nan nan nan nan nan
  • Python 有限边界 Voronoi 单元

    我正在尝试改编我在 stackoverflow 上找到的代码来创建具有有限边界的 voronoi 单元 我发现下面的代码https stackoverflow com a 20678647 2443944 https stackoverfl
  • 如何将样条拟合转换为分段函数?

    假设我有 import numpy as np from scipy interpolate import UnivariateSpline true data I don t know this function x np linspac
  • 在 scipy.stats 中,rv_continuous 有一个 fit 方法来查找 MLE,但 rv_discrete 没有。为什么?

    我想找到一些可能受离散分布控制的数据的最大似然估计 但在 scipy stats 中 只有表示连续分布的类才具有拟合函数来执行此操作 代表离散分布的类不具有离散分布的原因是什么 简短的回答 因为据我所知 没有人为其编写代码 甚至没有人尝试过
  • 一维数组元素的最近邻运算

    我有二维数组 想将其转换为一维数组 二维数组是 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 到一维数组 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 如何访问元素编号的最近邻
  • 使用 php 在多维数组中按键排序[重复]

    这个问题在这里已经有答案了 可能的重复 在 PHP 中对多维数组进行排序 https stackoverflow com questions 2059255 sorting multidimensional array in php 如何在
  • php 数组中出现意外的 json 输出结构

    我正在尝试转换动态数据 如何从 PHP 获取此 JSON JSON 122240cb 253c 4046 adcd ae81266709a6 item 0 3 这就是我所做的 但它不起作用 PHP json array 122240cb 2
  • 按文件名对 $_FILES 进行排序 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 他俩 如您所知 在新的 HTML5 中 您可以非常轻松地上传多个文件 但我这里的问题是如何按列 名称 对 FILES 数组进行排序 这是
  • 如何向 scikit-learn KD 树添加/删除数据点?

    我想知道是否可以在创建 scikit learn KDTree 实例后添加或删除数据点 例如 from sklearn neighbors import KDTree import numpy as np X np array 1 1 2
  • 如何计算 3D 坐标的线性索引,反之亦然?

    如果我有一个点 x y z 如何找到该点的线性索引 i 我的编号方案是 0 0 0 是 0 1 0 0 是 1 0 1 0 是最大 x 维度 另外 如果我有一个线性坐标 i 我如何找到 x y z 我似乎无法在谷歌上找到这个 所有结果都充满

随机推荐

  • OpenCV 中跳过帧并寻找 RTSP 流的末尾

    我在 Raspberry Pi 上的 OpenCV 3 4 2 中捕获并处理 IP 摄像头 RTSP 流 不幸的是 处理需要相当长的时间 每帧大约 0 2 秒 并且流很快就会延迟 我不介意跳过一些帧 因此我正在寻找一种方法在捕获和处理下一帧
  • 如何获得任务并行库使用的最大并行度?

    我想使用 Parallel invoke 如果我分配 20 个并行任务 则只有 8 个同时运行 我的CPU是http ark intel com products 47925报告的线程数为 8 我假设可以并行运行的任务数与 cpu 线程数有
  • 在哪里可以查找 C++ STL 中向量的 size_type 定义?

    投射我的向量的结果似乎是安全的size 函数到unsigned int 但我怎么能确定呢 我的文档不清楚如何size type被定义为 不要假设容器大小的类型 或在其中键入的任何其他内容 Today 目前最好的解决方案是使用 std vec
  • GBM多项分布,如何使用predict()得到预测类别?

    我正在使用多项式分布gbmR 中的包 当我使用predict函数 我得到一系列值 5 086328 4 738346 8 492738 5 980720 4 351102 4 738044 3 220387 4 732654 但我想得到每个
  • 使用附加字符串本地化 Info.plist 变量

    我正在尝试本地化应用程序的名称 同时仍然能够根据构建配置附加字符串 所以目前它设置为
  • Cordova iOS 插件在构建后失败,除非我先删除平台和插件 JSON

    我有一个 Cordova 3 2 0 项目 我正在使用 XCode 模拟器和通过 USB 的 iPhone 4S 进行测试 当我执行以下命令时 应用程序运行时没有错误 rm rf platforms ios rm plugins ios j
  • 调用 RFC_READ_TABLE 时出现 DATA_BUFFER_EXCEEDED 错误?

    我的 java groovy 程序从用户输入接收表名和表字段 它查询 SAP 中的表并返回其内容 用户输入可能涉及表CDPOS and CDHDR 在阅读 SAP 文档和谷歌搜索后 我发现这些是存储更改文档日志的表 但我没有找到任何可以在j
  • ui-router $stateChangeStart 上的无限循环

    加大力度angular and 用户界面路由器 如果不满足先决条件 则很难重定向到不同的状态 我尝试使用拦截器 如何在角度拦截器中执行重定向 但有人提到处理 stateChangeState 会更合适 但我仍然陷入无限循环 Check he
  • Angular - 组件不同的模板

    我有一个组件 课程 我将此组件用于列表 该列表有时是水平的 有时是垂直的 我可以在组件内部动态选择模板文件吗 Component selector course templateUrl getTemplateFile 像这样的东西将是很棒的
  • Global.asax 中的事件未触发

    在我的 ASP Net 应用程序中 我无法在我的计算机上触发 Global asax 中的事件 例如 Session Start 将不会触发 同样的 Global asax 在我办公室的其他开发机器上运行良好 我努力了 ASP Net 开发
  • 我可以对指向 void 指针的指针使用指针算术吗?

    我知道你不能对 void 指针使用指针算术 但是理论上你可以对指向 void 指针的指针进行指针算术吗 因为sizeof void 会产生一个指针在您的系统上占用多少字节的答案 不允许进行指针运算void 因为void是一个不完整的对象类型
  • 以编程方式初始化 ViewController

    我正在尝试初始化一个UIViewController在我的 Swift 应用程序中 但我面临一个问题 我找不到任何明确的答案 我想从 FlowCoordinator 调用它来初始化控制器 但由于需要 init coder NSCoder 函
  • C++ Switch 无法使用用作 case 的外部定义变量进行编译

    我正在使用 MinGW GNU 编译器编写 C 当我尝试使用外部定义的整数变量作为 switch 语句中的 case 时 就会出现问题 我收到以下编译器错误 case 标签不会减少为整数常量 因为我已将整数变量定义为 extern 我相信它
  • Bootstrap Modals 和 Youtube:自动播放并在关闭时停止

    我需要能够在 Twitter Bootstrap 模式打开时自动播放 YouTube 视频 然后在关闭时停止该视频 我知道这个问题之前已经被问过 但我能找到的答案会导致包含许多视频的页面出现大量 javascript 代码 我正在努力减少膨
  • 如何在 IVY 中没有提供的情况下复制运行时库

    我以为我不需要问这个 但我没有任何进展 这个问题的解答 ivy如何将maven范围映射到ivy配置实际上解决了问题 但在理论部分 我有这样的配置
  • 如何为类的私有和公共成员分配内存

    在类中 私有成员是与公共成员分配在单独的内存中 还是所有成员都按照其定义的顺序分配 例如 class A private int a1 int a2 3 public int z int a3 2 int a4 5 private int
  • System.UnauthorizedAccessException:对路径“...”的访问被拒绝

    我使用 net 使用单击一次安装完成了 C wpf 安装 一切正常 然后我有以下代码 它是已安装程序的一部分 String destinationPath System Windows Forms Application StartupPa
  • 检测输入类型文本的编程更改[重复]

    这个问题在这里已经有答案了 当脚本更改输入类型文本的值时 有没有办法获得通知 I have
  • R:从字符串中删除最后三个点

    我有一个文本数据文件 我可能会用它来读取readLines 每个字符串的初始部分包含很多乱码 后面是我需要的数据 乱码和数据通常由三个点分隔 我想在最后三个点之后分割字符串 或者用某种标记替换最后三个点 告诉 R 将这三个点左侧的所有内容视
  • 将 scipy.stats.gaussian_kde 与二维数据一起使用

    我正在尝试使用the scipy stats gaussian kde class把一些离散的经纬度信息采集到的数据进行平滑处理 所以最后看起来有点像等高线图 密度高的就是峰 密度低的就是谷 我很难将二维数据集放入gaussian kde班