서로 다른 크기의 두 배열의 차이를 찾을 수 있습니까?Matlab : 두 가지 다른 크기의 배열 차이점
제 문제는 두 개의 배열이 있는데, 크기가 비슷하고 각 점에서 오류가 필요하다는 것입니다.
데이터는 다음과 같다 : -
요 데이터가 요 참고보다 훨씬 크다.
서로 다른 크기의 두 배열의 차이를 찾을 수 있습니까?Matlab : 두 가지 다른 크기의 배열 차이점
제 문제는 두 개의 배열이 있는데, 크기가 비슷하고 각 점에서 오류가 필요하다는 것입니다.
데이터는 다음과 같다 : -
요 데이터가 요 참고보다 훨씬 크다.
매우 순진한 방법으로 참조 배열의 각 요소를 간단히 채울 수 있습니다. 그것은 할 매우 간단하다 :
n = length(yaw)/length(yaw_ref);
yaw_ref_pad = zeros(length(yaw), 1);
for j = 1:length(yaw_ref)-1
yaw_ref_pad((n*j):(n*(j+1)) = yaw_ref(j);
end
또한 또는 당신이 원하는하지 않을 수 있습니다 더 적응 무언가를 할 수 있었다. 이 접근법은 파생 된 참조가 전환되어야하는 위치를 결정하기 위해 파생물을 사용합니다. 이것은 시스템이 과도한 PID 시스템처럼 보이고 출력을 사용하여 입력을 시드하기 때문에 조금 원형으로 간주 될 수 있습니다.
는 는yaw_ref_pad
작성 후, 당신의 결과는 단순히
하나의 방법입니다
yaw_ref_pad = zeros(length(yaw), 1);
[x, peaks] = findpeaks(diff(yaw));
for j = 1:length(peaks)-1
yaw_ref_pad(peaks(j):peaks(j+1)) = yaw_ref(j);
end
error = yaw_ref_pad - yaw;
oyu를 대단히 감사합니다. 첫 번째 방법은 완벽하게 작동했으며 정확히 내가 찾고 있던 방법이었습니다! –
그것의 완벽 possible-, 패딩 배열 (당신의 두 배열의 가장 큰에 대한 사용 크기 속성을) 만들와 패딩 배열을 채 웁니다 작은 배열을 선택하고 비교합니다. – ha9u63ar
padarray 함수는 배열의 끝이나 처음 또는 양쪽에 값을 추가하는 것을 허용하지만 나는 그 것을 보지 않습니다. 끝과 별 또는 두 배열을 일치시켜야하고 너무 작기 때문에 하나의 요소를 채워야합니다. –
나는 두 배열의이 이미지를 크기 조정하지 않고도 [data2] (https://drive.google.com/open?id=0B20R_Z0cMZiZLTBHWUtjWUZlUFU)를 이해하는 데 필요하다고 생각합니다. –