How to use one data set to find the mean of another?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Kristin Aldridge
el 31 de Ag. de 2021
Comentada: Kristin Aldridge
el 1 de Sept. de 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 comentarios
Respuesta aceptada
Chunru
el 1 de Sept. de 2021
Editada: Chunru
el 1 de Sept. de 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))
Más respuestas (1)
Jeff Miller
el 1 de Sept. de 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 comentarios
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!