Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Matlab 从某些行提取数据_Matlab_Extract_Rows - Fatal编程技术网

Matlab 从某些行提取数据

Matlab 从某些行提取数据,matlab,extract,rows,Matlab,Extract,Rows,我有一系列的数据集,每一个大约1032x4。通过我现在的节目,我可以找到某个事件发生的时间(虽然我是这样做的)。我得到的结果是: startTime: [1 84 111 251 450 482 613 660 787 951 956] endTime: [5 90 112 252 451 485 619 661 788 952 961] 这个输出告诉我我感兴趣的事件发生在哪一行的哪一行。因此,我想获得从第1行到第5行、从第84行到第90行、从111到112、从251到252的值序列,等等。

我有一系列的数据集,每一个大约1032x4。通过我现在的节目,我可以找到某个事件发生的时间(虽然我是这样做的)。我得到的结果是:

startTime: [1 84 111 251 450 482 613 660 787 951 956]
 endTime: [5 90 112 252 451 485 619 661 788 952 961]
这个输出告诉我我感兴趣的事件发生在哪一行的哪一行。因此,我想获得从第1行到第5行、从第84行到第90行、从111到112、从251到252的值序列,等等。我可以通过手动键入
time(1)
time(5)
time(84)
time(90)
来计算事件的持续时间。但有没有办法自动做到这一点

请帮帮我!!这听起来是件容易的事,但却让我发疯

提前感谢,

到目前为止,我掌握的代码是:

function DetectEvent = DetectEvent(inputData, ColumnNumbers)
%ColumnNumbers = 1 contains Time
%ColumnNumbers = 2 contains Position
%ColumnNumbers =3 contains velocity
%ColumnNumbers=4 contains accelereation

eventNow = false;
event.startTime = []; % initialise
event.endTime = []; % initialise
for i = 1: length(inputData)
if abs(inputData(i,ColumnNumbers.velocity)) == 0 
    if ~eventNow
        eventNow = true;
        thisevent.startTime = i;
    end
else
    if eventNow
        eventNow = false;
        thisevent.endTime = i - 1;
        event.startTime = [event.startTime, thisevent.startTime];
        event.endTime = [event.endTime, thisevent.endTime];
    end
end
end

您可以使用
startTime
endTime
作为与
冒号运算符组合的索引(:)

例如,要获取在i处记录的事件(例如,从
开始时间(i)
结束时间(i)
),您可以使用(假设您的1032x4矩阵被称为
数据
):


这将把
数据
矩阵中从
开始时间(i)
结束时间(i)
的所有行放入
事件中。

到目前为止你能发布你的代码吗(或至少是它的相关部分)?
时间(结束时间)-时间(开始时间)
?还有其他想法吗?我不知道我做错了什么,但它对我不起作用。。。
events=data(startTime(i):endTime(i),:);