按类别排序时间序列数据

2视图(30天)
rghouse
rghouse 2016年10月24日
评论道: rghouse2016年10月26日
你好,我需要排序与计数时间序列数据集。例如,有5个不同的物种,被摄像头拍到每个具有独特的时间/名称/尺寸/方向运动。我如何查询数据,所有物种的出现及其相关数据?查询后的物种,我想每天生产数。例)物种记录x乘以每天整个时期。
3评论
dpb
dpb 2016年10月25日
听起来就像 将机票在Matlab与诸如物种分类变量,你可以做分组/选择/等。,……

登录置评。

接受的答案

彼得·珀金斯
彼得·珀金斯 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,你可能想看看新的时间表类型,这使得诸如每日计算简单,使用同步。
希望这个有帮助。
1评论
rghouse
rghouse 2016年10月26日
哇!非常感谢彼得,我今天将通过工作流运行,让你知道。我曾在一个方法使用字符串但有点乱。再一次,感谢。最好的,瑞安

登录置评。

更多的答案(0)

社区寻宝

找到宝藏在MATLAB中央,发现社区如何帮助你!

开始狩猎!