python - 在python中正确编码自相关函数
问题描述
我有两个数据集,每个数据集长 325 个元素。一个是沿 X 轴的数据,一个是沿 y 轴的数据。Q[0] 和 Q[1] 一起构成 Q。
方程应该是这样的:
(Q(i+deltai,j) - 均值(Q_i,j)) x (Q_i,j - 均值(Q_i,j)) / (Q_i,j - 均值(Q_i,j))^2
这是一个自相关函数。我想遍历第一个函数的 i + delta i,同时遍历 Q 中的数据。我确实开始为此编写两个 for 循环,然后尝试了 np.correlate。最后,我觉得我对 python 新手感到困惑,感觉过去几天我都在追我的尾巴。
我试过的代码是:
I = npzfile['i']
Q = npzfile['q']
U = npzfile['u']
nxside = Q.shape[0]
nyside = Q.shape[1]
for i in numpy.arange(0,nxside-1,1):
result = numpy.correlate(Q[0], Q, mode='full')
result2 = (result/float(result.max()))
plt.plot(result2, '-')
for i in numpy.arange(0,nxside-1,1):
for j in numpy.arange(0, nyside-1,1):
# # # J= (i)
# # # # L = ()
# # # # print L
M = (Q - numpy.mean(Q))
B = (Q[i] - numpy.mean(Q))
K = (Q - numpy.mean(Q))**2
Z = numpy.abs(M*B)/numpy.abs(K)
# print numpy.abs((M*B)/K)
plt.plot(Z, 'ro')
我希望输出在 y 轴上在 0 和 1 之间变化,超过 325 个元素。
解决方案
推荐阅读
- ruby-on-rails - 如何使用 ActiveRecord 按多个类别过滤产品?
- azure - azure 和 S2S VPN 中的 RRAS 服务器
- android - 无侧边框的表格
- java - 为什么我的 IE 浏览器使用 Selenium 和 Cucumber 启动了两次?
- php - 是否有任何 PHP 函数可以解决另一个数组值字符串中的数组值匹配问题?
- c# - 如何将非常大的文件存储到数据库记录中
- typescript - 如何构建打字稿文件和类型
- python - 如何通过 pyspark 读取 hive 分区表
- cakephp - 需要几个值之一
- google-cloud-platform - 在 Big Query 的特定列中查找所有具有 Null 值的行