How can I extract non-consecutive indices from a vector?

196 vues (au cours des 30 derniers jours)
Ray Smith
Ray Smith le 5 Avr 2020
Réponse apportée : Parvin le 14 Mar 2024
In 5.2 Extracting Multiple Elements, Further practice "Indices can be non-consecutive numbers. Try extracting the first, third, and sixth elements of density." How?
  14 commentaires
Edward li
Edward li le 25 Août 2023
Could someone explain the logic behind the parenthese and the brackets. like why is it in that order and what does each mean?
Voss
Voss le 19 Déc 2023
@Edward li: In this case, the parentheses are used for indexing, and the square brackets are used for array concatenation. [1,3,6] concatenates the scalars 1, 3, and 6 into a single vector, and density([1,3,6]) gets the elements of density at the indices stored in that vector.
See the Special Characters section of this page for more information:

Connectez-vous pour commenter.

Réponse acceptée

David Hill
David Hill le 5 Avr 2020
If you have a density array (d), then to extract the 1,3,6 elements:
extracted_elements=d([1,3,6]);
  20 commentaires
Viktoriia
Viktoriia le 12 Juil 2023
no it can't. It only worked for me when I used commas.
Image Analyst
Image Analyst le 12 Juil 2023
@Viktoriia observe it working without commas below:
d = 10 : 10 : 60 % Sample data vector.
d = 1×6
10 20 30 40 50 60
extracted_elements = d([1 3 6]) % Get only some of the elements
extracted_elements = 1×3
10 30 60
If you execute that code on your computer what do you see? If you executed different code than above, without commas, then what was that code?

Connectez-vous pour commenter.

Plus de réponses (8)

Kakasaheb Nikam
Kakasaheb Nikam le 12 Mai 2020
density(3)
% extract third element
when we use [ ] square bracket, it extracting specific index position values.
so answer is
extracted_elements = density( [ 1, 3, 6 ] );
  2 commentaires
MAHMUDUL FIROZ
MAHMUDUL FIROZ le 8 Juin 2020
density( [ 1, 3, 6 ] )
Ume Aiman
Ume Aiman le 1 Nov 2021
yess this is correct

Connectez-vous pour commenter.


shaik sahil
shaik sahil le 22 Août 2020
p=density([1,3,5])

Diogo Teixeira Fernandes
Diogo Teixeira Fernandes le 28 Sep 2021
extracted_elements=density([1,3,6])
it worked for me

Girish Pal
Girish Pal le 2 Sep 2020
p = density(1), density(3), density(6)
  2 commentaires
madhan ravi
madhan ravi le 2 Sep 2020
What?
Stephen23
Stephen23 le 2 Sep 2020
Modifié(e) : Stephen23 le 2 Sep 2020
While this does literally what the question requests "...extract non-consecutive indices from a vector", it only assigns the first of the comma-separated list to p, which is unlikely to give the desired effect, nor is it likely to be what the homework task requires.

Connectez-vous pour commenter.


Jamal Ahmad
Jamal Ahmad le 19 Juin 2021
p=density( [ 1, 3, 6 ] )
  1 commentaire
madhan ravi
madhan ravi le 20 Juin 2021
How's this different from other answers?

Connectez-vous pour commenter.


Harish Mirji
Harish Mirji le 14 Fév 2022
density = [5 8 9 7 8 4 5 9 8 7]
density = 1×10
5 8 9 7 8 4 5 9 8 7
p = density([1 3 5])
p = 1×3
5 9 8

Ahmed
Ahmed le 7 Mar 2024
Extracting Multiple Elements
Instructions are in the task pane to the left. Complete and submit each task one at a time.
This code sets up the activity.
data = [3 0.53 4.0753 NaN;18 1.78 6.6678 2.1328;19 0.86 1.5177 3.6852;20 1.6 3.6375 8.5389;21 3 4.7243 10.157;23 6.11 9.0698 2.8739;38 2.54 5.30023 4.4508]
data = 7×4
3.0000 0.5300 4.0753 NaN 18.0000 1.7800 6.6678 2.1328 19.0000 0.8600 1.5177 3.6852 20.0000 1.6000 3.6375 8.5389 21.0000 3.0000 4.7243 10.1570 23.0000 6.1100 9.0698 2.8739 38.0000 2.5400 5.3002 4.4508
density = data(:,2)
density = 7×1
0.5300 1.7800 0.8600 1.6000 3.0000 6.1100 2.5400
x = density([1,3,6])
x = 3×1
0.5300 0.8600 6.1100

Parvin
Parvin le 14 Mar 2024
This code sets up the activity.
data = [3 0.53 4.0753 NaN;18 1.78 6.6678 2.1328;19 0.86 1.5177 3.6852;20 1.6 3.6375 8.5389;21 3 4.7243 10.157;23 6.11 9.0698 2.8739;38 2.54 5.30023 4.4508]
data = 7×4
3.0000 0.5300 4.0753 NaN 18.0000 1.7800 6.6678 2.1328 19.0000 0.8600 1.5177 3.6852 20.0000 1.6000 3.6375 8.5389 21.0000 3.0000 4.7243 10.1570 23.0000 6.1100 9.0698 2.8739 38.0000 2.5400 5.3002 4.4508
To extract the first, third, and sixth elements of density, use [1 3 6] as an index.
density = [1 3 6]
density = 1×3
1 3 6
data(density)
ans = 1×3
3 19 23

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by