按类别排序时间序列数据
2视图(30天)
显示旧的评论
接受的答案
彼得·珀金斯
2016年10月25日
假设你从电子表格的版本是这样的:
时间、种类、大小、方向
10/25/2016 10:11:12,奇努克大马哈鱼65厘米,
10/25/2016 13:14:15,奇努克大马哈鱼66厘米,
10/25/2016 16:17:18,虹鳟鳟鱼67厘米,
首先作为一个表中读取数据。
> > T = readtable (“fishData.csv”)
T =
时间物种大小方向
_______________________________________________
10/25/2016 10:11:12大鳞大麻哈鱼的65厘米的“了”
10/25/2016 13:14:15大鳞大麻哈鱼的66厘米的“了”
10/25/2016 16:17:18“虹鳟鳟鱼”67厘米的“下来”
最近版本的MATLAB,第一列的文件将自动datetime变量T,在早期版本,你可以把它。其他三个进来作为字符串,它将更方便两个类别和一个数字。
> > T。物种=分类(T.Species);
> > T。大小= str2double(strrep(T.Size,“厘米”,”));
> > T。方向=分类(T.Direction);
> > T
T =
时间物种大小方向
___________________售予_________
10/25/2016 10:11:12奇努克大马哈鱼65年向上
10/25/2016 13:14:15奇努克大马哈鱼66年向上
10/25/2016 16:17:18虹鳟鳟鱼67年下来
现在你可以选择或排序,物种,大小或方向,等
> > T (T。物种= =大鳞大麻哈鱼的:)
ans =
时间物种大小方向
___________________是______________________
10/25/2016 10:11:12奇努克大马哈鱼65年向上
10/25/2016 13:14:15奇努克大马哈鱼66年向上
你也可以每天计数的物种。如果你还希望类似的平均大小,varfun将一个办法:
> > T。一天= dateshift(T.Time,“开始”,“天”);T.Day。格式=“MM / dd / yyyy”;
> > varfun (@mean T“GroupingVariables”,{“天”“物种”},“数据源”,“大小”)
ans =
一天物种GroupCountmean_Size
__________售予_______________
10/25/2016奇努克大马哈鱼265.5
10/25/2016虹鳟鳟鱼167年
如果你获得R2016b,你可能想看看新的时间表类型,这使得诸如每日计算简单,使用同步。
希望这个有帮助。