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

191 views (last 30 days)
Ray Smith on 5 Apr 2020
Answered: Parvin on 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 CommentsShow 12 older commentsHide 12 older comments
Edward li on 25 Aug 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 on 19 Dec 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:

Sign in to comment.

Accepted Answer

David Hill on 5 Apr 2020
If you have a density array (d), then to extract the 1,3,6 elements:
extracted_elements=d([1,3,6]);
20 CommentsShow 18 older commentsHide 18 older comments
Viktoriia on 12 Jul 2023
no it can't. It only worked for me when I used commas.
Image Analyst on 12 Jul 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?

Sign in to comment.

More Answers (8)

Kakasaheb Nikam on 12 May 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 CommentsShow NoneHide None
MAHMUDUL FIROZ on 8 Jun 2020
density( [ 1, 3, 6 ] )
Ume Aiman on 1 Nov 2021
yess this is correct

Sign in to comment.

shaik sahil on 22 Aug 2020
p=density([1,3,5])
1 CommentShow -1 older commentsHide -1 older comments
Md Asif Rezwan Shishir on 6 Mar 2022
p=density([1,3,6])
it worked for me...thanks!

Sign in to comment.

Diogo Teixeira Fernandes on 28 Sep 2021
extracted_elements=density([1,3,6])
it worked for me
0 CommentsShow -2 older commentsHide -2 older comments

Sign in to comment.

Girish Pal on 2 Sep 2020
p = density(1), density(3), density(6)
2 CommentsShow NoneHide None
madhan ravi on 2 Sep 2020
What?
Stephen23 on 2 Sep 2020
Edited: Stephen23 on 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.

Sign in to comment.

Jamal Ahmad on 19 Jun 2021
p=density( [ 1, 3, 6 ] )
1 CommentShow -1 older commentsHide -1 older comments
madhan ravi on 20 Jun 2021
How's this different from other answers?

Sign in to comment.

Harish Mirji on 14 Feb 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
1 CommentShow -1 older commentsHide -1 older comments
Abubakarr on 25 May 2023
It worked for me, thanks.

Sign in to comment.

Ahmed on 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
0 CommentsShow -2 older commentsHide -2 older comments

Sign in to comment.

Parvin on 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
0 CommentsShow -2 older commentsHide -2 older comments

Sign in to comment.

Categories

Find more on Graphics Performance in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!