Python:两个二维数组之间的相关系数

发布于 2025-01-14 16:59:04 字数 341 浏览 1 评论 0原文

假设我们有两个不同的 2D np.arrays

a = (np.random.randint(25,30,1512000)).reshape(1050,1440)

b = (np.random .randint(20,25,1512000)).reshape(1050,1440)

所以,维度ab(1050,1440)

我想计算每个网格点 a 和 b 之间的互相关系数(即创建一个新的二维数组,其中包含 a 和 b 之间的相关系数值,维度为 (1050,1440)。

Let's assume that we have two different 2D np.arrays

a = (np.random.randint(25,30,1512000)).reshape(1050,1440)

b = (np.random.randint(20,25,1512000)).reshape(1050,1440)

So, the dimension of a and b is (1050,1440)

I want to calculate the cross correlation coefficient between a and b at each grid point (i.e to create a new 2D array containing correlation coefficient values between a and b, with a dimension of (1050,1440).

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

赤濁 2025-01-21 16:59:04

您可以使用 nctoolkit 来完成此操作。假设文件具有相同的网格,则以下内容将起作用:

import nctoolkit as nc
ds1 = nc.open_data("file1.nc")
ds2 = nc.open_data("file2.nc")
ds_cor = nc.cor_space(ds1, ds2)
ds_cor.plot()

可能网格不匹配,因此您可能需要重新网格:

import nctoolkit as nc
ds1 = nc.open_data("file1.nc")
ds2 = nc.open_data("file2.nc")
# regrid ds1 to ds2's grid
ds1.regrid(ds2)
ds_cor = nc.cor_space(ds1, ds2)
ds_cor.plot()

You can do this with nctoolkit. Assuming the files have the same grid, the following will work:

import nctoolkit as nc
ds1 = nc.open_data("file1.nc")
ds2 = nc.open_data("file2.nc")
ds_cor = nc.cor_space(ds1, ds2)
ds_cor.plot()

Likely the grids do not match, so you might want to regrid:

import nctoolkit as nc
ds1 = nc.open_data("file1.nc")
ds2 = nc.open_data("file2.nc")
# regrid ds1 to ds2's grid
ds1.regrid(ds2)
ds_cor = nc.cor_space(ds1, ds2)
ds_cor.plot()
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文