Please help create a transition matrix
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi,
I hope anyone could help me, I'm kinda new to Matlab.
I have a variable 'velocity' with the value ranging from 0-48 km/hr. I have about 2250 of these data. I would like to create a frequency matrix of the speed transition follows another speed.
Velocity :
1.28
0.57
0.75
2.88
8.05
13.7
...
I would like to make a frequency matrix with this criteria:
Explanation: cell [2,2] --> velocity < 2 is followed by velocity < 2 one time.
I really appreciate any help you give. Thank you for your time.
Best,
Ella
0 commentaires
Réponse acceptée
Sven
le 20 Mai 2014
Hi Ella,
The code below should do what you're looking for. I displayed the result as an image but you can just look at the final contents of freqMat
velocity = [1.28 0.57 0.75 2.88 8.05 13.7]
binEdges = 0:2:20; % 0 to 2 is the first bin, 2 to 4 is second bin, etc
[~,velBinNos] = histc(velocity,binEdges); % Histc just asks which bin each velocity belongs to
binTicks = binEdges(1:end-1); % Don't need the last bin edge
freqMat = zeros(length(binTicks));
fromBinNos = velBinNos(1:end-1);
nextBinNos = velBinNos(2:end);
for i = 1:length(fromBinNos)
freqMat(fromBinNos(i),nextBinNos(i)) = freqMat(fromBinNos(i),nextBinNos(i)) + 1;
end
figure, imagesc(binTicks,binTicks,freqMat)
xlabel 'Next velocity bin'
ylabel 'First velocity bin'
colorbar
Did this help you out?
Thanks, Sven.
3 commentaires
shahab anjum
le 9 Mar 2020
can you help me to please to build transition matrix if i have 1000x286 matrix.
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!