在matlab

时间:2017-02-02 19:21:14

标签: matlab sorting bigdata

我的能量数据超过2500万行和3列,数据看起来像

[米Id日期+时间负载     1000 19506 .5     1000 19501 .5      。 。 。     1001 19500 .6      。 。 。     。 。 。    1999 19509 .4     。 。 。     1999 73048 .4]

我需要对这些数据进行分类,使得对于每个仪表ID,即1000-1999(所有1000米),我得到按时间序列排列的负载。时间码的前三位数表示日,而后两位数字的范围为0-48,每半小时显示24小时。我可以根据仪表ID对数据进行排序,但不按时间顺序排列。我正在努力寻找一种解决方案来找到一种技术来自动排列数据,使其呈现出类似的东西;

米ID 1000 [19501 19502 .......................... 73048   .5 1.5 ............................ 2.5] 等等所有仪表ID。 使用过滤器很容易在excel中解决,但是考虑到数据量,excel无法打开此文件。 任何建议。

1 个答案:

答案 0 :(得分:0)

使用matlab sortrows函数。

data = [ 1000 19506 .5;
         1999 73048 .4;
         1000 19501 .5;
         1999 19509 .4;
         1001 19500 .6 ];
datSorted = sortrows(data, [ 1 2 ]); % sort by column 1 (meterID) then column 2 (Date+time)