How to use one data set to find the mean of another?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Kristin Aldridge
le 31 Août 2021
Commenté : Kristin Aldridge
le 1 Sep 2021
I have a data set (neighbors) and a data set (height) where I need to find the mean of the height of the plants that have 1 neighbor.
If say my Neighbors data set is 2,1,4,1,6,7,3,1 and my height is 12.5,17,10,4,16,20.4,13.2,9.4 . How do I compare these two? My thought is to use NON=find(Neighbors==1) and somehow use the designated spots to correlate it to height, but I don't know how. Please let me know if there is another way to do this. I've only been using Matlab for 1 week and have been using youtube a lot for help. Thanks.
NON=NumberOfNeighbors
PLCm=PlantHeightcm
find PLCm when NON=1
Error using find
Second argument must be a positive scalar integer.
0 commentaires
Réponse acceptée
Chunru
le 1 Sep 2021
Modifié(e) : Chunru
le 1 Sep 2021
neighbors = [2,1,4,1,6,7,3,1];
height = [12.5,17,10,4,16,20.4,13.2,9.4 ];
% find the entries with 1 neighbour
idx = neighbors == 1;
% use logic index to get the heights with 1 neigbour and find mean
a = mean(height(idx))
% or in one line
a = mean(height(neighbors==1))
Plus de réponses (1)
Jeff Miller
le 1 Sep 2021
NON1 = NON == 1; % this makes a boolean vector that is true for the positions where NON==1
mean(PLCm(NON1)); % this computes the mean of the PLCm values in those positions
0 commentaires
Voir également
Catégories
En savoir plus sur Logical 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!