How to calculate the average with "for loop"
13 ビュー (過去 30 日間)
古いコメントを表示
Hello. I'm beginner at Matlab.
I want to calculate the average of DTW distances using rows.
For example, I have two datasets, data11(19200 x 25), data22(19200 x 25).
After computing the DTW distance between two rows, I wanna get the average value of all dtw distances.
Please let me know how to get the average value using "For loop" code.
clear all
data11 = csvread('person01_boxing_d1_uncomp.csv');
data22 = csvread('person01_handclapping_d1_uncomp.csv');
x = data11(1,:); % 1 ~ 19200
y = data22(19199,:); % 1 ~ 19200
dtw(x,y);
% I get one dtw distance.
% I want to compute the average value of all kk, kk1, kk3, .....
x = data11(1,:);
y = data22(1,:);
kk = dtw(x,y);
x = data11(1,:);
y = data22(2,:);
kk1 = dtw(x,y);
x = data11(1,:);
y = data22(19199,:);
kk3 = dtw(x,y);
average = mean(kk, kk1, kk3) % ??
0 件のコメント
採用された回答
KALYAN ACHARJYA
2021 年 1 月 2 日
編集済み: KALYAN ACHARJYA
2021 年 1 月 2 日
How to calculate the average with "for loop"
data11 = csvread('person01_boxing_d1_uncomp.csv');
data22 = csvread('person01_handclapping_d1_uncomp.csv');
x = data11(1,:); % 1 ~ 19200
kk=zeros(1,size(data22,1)-1);
for i=1:length(kk)
y = data22(i,:);
kk(i)= dtw(x,y);
end
mean(kk)
6 件のコメント
KALYAN ACHARJYA
2021 年 1 月 2 日
編集済み: KALYAN ACHARJYA
2021 年 1 月 2 日
Seem so
data11 = csvread('person01_boxing_d1_uncomp.csv');
data22 = csvread('person01_handclapping_d1_uncomp.csv');
iter=size(data11,1)-1;
kk=zeros(iter,iter);
for i=1:iter
x = data11(i,:);
for j=1:iter
y = data22(j,:);
kk(i,j)=dtw(x,y);
end
end
mean(kk(:))
You may look for avoid loop (if possible), since it takes a long time due to the large number of repetitions. You may check arrayfun, cellfun or other similar questions in the fourmn. More, suggested to avoid clear all
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrices and Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!