查看: 147|回复: 3|关注: 0

[已答复] 对一个时间序列进行升序排列后,如何找出对具有相同位置序列并求其平均值呢

[复制链接]

新手

5 麦片

财富积分


050


1

主题

4

帖子

0

最佳答案
发表于 2020-7-11 20:21:18 | 显示全部楼层 |阅读模式
对一个时间序列进行升序排列后,如何找出对具有相同位置序列并求其平均值呢,求大神解答
回复主题 已获打赏: 0 积分

举报

论坛优秀回答者

4

主题

1422

帖子

180

最佳答案
  • 关注者: 90
发表于 2020-7-11 21:50:55 | 显示全部楼层
没太理解问题,能举例来说明一下不
回复此楼 已获打赏: 0 积分

举报

新手

5 麦片

财富积分


050


1

主题

4

帖子

0

最佳答案
 楼主| 发表于 2020-7-11 21:56:49 | 显示全部楼层
coolchen302 发表于 2020-7-11 21:50
没太理解问题,能举例来说明一下不

function [pe hist] = pec(y,m,t)
%  Calculate the permutation entropy计算排列熵
%  Input:   y: time series;时间序列
%           m: order of permuation entropy排列熵顺序
%           t: delay time of permuation entropy, 排列熵的延迟时间
% Output:
%           pe:    permuation entropy排列熵
%           hist:  the histogram for the order distribution订单分布的直方图
ly = length(y);
permlist = perms(1:m);%perms是所有可能的排列。PERMS(1:N)或PERMS(V)(其中V是长度为N的向量)将创建一个具有N!的矩阵! 行和N列,包含N个元素的所有可能排列。此功能仅在N小于约10的情况下才适用(对于N = 11,输出超过3 GB)。
c(1:length(permlist))=0;   
for j=1:ly-t*(m-1)
     [a,iv]=sort(y(j:t:j+t*(m-1)));%求S(j)a为排序后的矩阵,iv为排序后的值在之前向量中的位置
此段程序代码为排列熵的一部分代码,其中a为对数据y进行升序重派后的序列,现在我需要找到a序列中相同的值,并求其平均值,不知道如何利用代码实现
回复此楼 已获打赏: 0 积分

举报

论坛优秀回答者

4

主题

1422

帖子

180

最佳答案
  • 关注者: 90
发表于 2020-7-11 22:59:25 | 显示全部楼层
因心 发表于 2020-7-11 21:56
function  = pec(y,m,t)
%  Calculate the permutation entropy计算排列熵
%  Input:   y: time series; ...

我把你的问题一般化了,看看正面的程序对你有没有借鉴意义
  1. A=round(10*rand(10000,1));
  2. B=unique(A);
  3. C=zeros(size(B));
  4. for m=1:length(B)
  5.         C(m)=mean(A==B(m));
  6. end
复制代码
回复此楼 已获打赏: 0 积分

举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

快速回复 返回顶部 返回列表