数据价值-DataValues

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 341|回复: 0

[matlab] matlab时间序列的排序函数_matlab培训

[复制链接]

1万

主题

1万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
39029
发表于 2016-12-8 13:14:16 | 显示全部楼层 |阅读模式
matlab时间序列的排序函数,关键词:matlab 时间序列排序、matlab排序函数,sort,
功能:对时间序列x进行排序。,
格式:m = sort(x, mode) % 当参数mode=‘ascend’,表示对x进行升序重排;当mode=‘descend’,表示降序重排,wrev,
功能:得到时间序列x的逆序。,
格式:m = wrev(x),
如,
>> A = randn(5, 1)
A =
        0.673698696541778
       -0.669112995372736
       -0.400322700634663
       -0.671802427219058
         0.57562901658315
>> wrev(A)
ans =
         0.57562901658315
       -0.671802427219058
       -0.400322700634663
       -0.669112995372736
        0.673698696541778,issorted,
功能:判断时间序列x是否按升序排列。,
格式:m = issorted(x),unique,
功能:对时间序列x按互异元素进行重排。,
格式:[b, m, n] = unique(x) % b为x的互异元素按升序重排,m为b中每一元素出现在x中的位置,n为x中各个元素在b中的位置,
如,
>> A = [1 1 5 6 2 3 3 9 8 6 2 4]
A =
    1     1     5     6     2     3     3     9     8    6     2     4
>> [b1, m1, n1] = unique(A, ‘first’)
b1 =
    1     2     3     4     5     6     8     9
m1 =
    1     5     6    12     3     4     9     8
n1 =
    1     1     5     6     2     3     3     8     7    6     2     4
>> [b2, m2, n2] = unique(A, ‘last’)
b2 =
    1     2     3     4     5     6     8     9
m2 =
    2    11     7    12     3    10     9     8
n2 =
    1     1     5     6     2     3     3     8     7    6     2     4,ismember,
功能:判断两时间序列中元素的包含关系。,
格式:m = ismember(x1, x2),
如,
>> set = [0 2 4 6 8 10 12 14 16 18 20];
a = (1:5)
a =
    1     2     3     4     5
>> ismember(a, set)
ans =
    0     1     0     1     0
>>,sortrows,
功能:按指定列进行重排序。,
格式:B = sortrows(A) % 按第一列的数值大小进行排序,第一列相同按第二列,一次下去,
B = sortrows(A, column) % 按指定列的数值大小进行排序,
如,
>> A=floor(gallery(‘uniformdata’,[6 7],0)*100);
A(1:4,1)=95;  A(5:6,1)=76;  A(2:4,2)=7;  A(3,3)=73
A =
   95    45    92    41    13     1    84
   95     7    73    89    20    74    52
   95     7    73     5    19    44    20
   95     7    40    35    60    93    67
   76    61    93    81    27    46    83
   76    79    91     0    19    41     1
>> B = sortrows(A)
B =
   76    61    93    81    27    46    83
   76    79    91     0    19    41     1
   95     7    40    35    60    93    67
   95     7    73     5    19    44    20
   95     7    73    89    20    74    52
   95    45    92    41    13     1    84
>> C = sortrows(A,2)
C =
   95     7    73    89    20    74    52
   95     7    73     5    19    44    20
   95     7    40    35    60    93    67
   95    45    92    41    13     1    84
   76    61    93    81    27    46    83
   76    79    91     0    19    41     1,intersect,
功能:寻找两序列中的公共元素。,
格式:[c, ia, ib] = intersect(a, b),
如,
>> A = [1 2 3 6]; B = [1 2 3 4 6 10 20];
[c, ia, ib] = intersect(A, B)
c =
    1     2     3     6
ia =
    1     2     3     4
ib =
    1     2     3     5,lagmatrix,
功能:生成滞后时间序列。,
格式:XLAG = lagmatrix(x, Lags),
如,
>> x = 1:10
x =
    1     2     3     4     5     6     7     8     9    10
>> lagmatrix(x, 4)’
ans =
  NaN   NaN   NaN   NaN     1     2     3     4     5     6,wkeep,
功能:提取时间序列中的一个子序列。,
格式:y = wkeep(x, l, opt) % 从时间序列x中提取长度为l的一个时间序列y。当输入参数opt=’c’时,则从x的中间提取;当opt=’l’,则从x的左边提取;当输入参数为opt=’r’时,则从x的右边提取。,
如,
>> x = 1:10;
y = wkeep(x,6,’c’)
y =
    3     4     5     6     7     8
>> y = wkeep(x,6,’l’)
y =
    1     2     3     4     5     6
>> y = wkeep(x,6,’r’)
y =
    5     6     7     8     9    10,
转载请注明:数据分析 » matlab时间序列的排序函数_matlab培训
回复

使用道具 举报

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

本版积分规则

QQ|Archiver|手机版|小黑屋|DataValues ( 赣ICP备16006919号 ) DataValues

GMT+8, 2019-8-24 19:51 , Processed in 0.186771 second(s), 29 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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