how we find a particular number from the matrix in matlab????
You are now following this question
- You will see updates in your followed content feed.
- You may receive emails, depending on your communication preferences.
An Error Occurred
Unable to complete the action because of changes made to the page. Reload the page to see its updated state.
Show older comments
0 votes
Share a link to this question
A=[2 3 4;5 4 6;7 8 4] suppose we want to select '4' of 1st row of 3rd column,2nd row of 2nd column and 3rd row of 3rd column.how did we find this number?????
Accepted Answer
It is not clear what numbers you want: when you write that you want "this number", are you referring to the indices of the fours in that matrix, or the fours themselves, or perhaps some other numbers? If you don't tell us exactly what you want, or what you need to do with these numbers, then it is difficult for us to provide you with a clear answer.
It seems that you want the indices of the fours, in which case here are some possible ways to get indices of values in a matrix:
>> A=[2 3 4;5 4 6;7 8 4] % data matrix
A =
2 3 4
5 4 6
7 8 4
>> [R,C] = find(A==4) % row and column indices
R =
2
1
3
C =
2
3
3
>> L = find(A==4) % linear indices
L =
5
7
9
>> X = A==4 % logical indices
X =
0 0 1
0 1 0
0 0 1
And of course you can use any of these to extract those value from the matrix:
>> A(X)
ans =
4
4
4
You can read more about indexing in the documentation:
8 Comments
prema13
on 4 Oct 2015
thank u so much for solve my problem
prema13
on 4 Oct 2015
A=[11 5 6 3 10 8 7 4 2 9 1;6 3 11 7 8 5 1 2 4 9 10;10 8 11 6 7 3 9 5 4 1 2;7 1 2 5 9 8 4 10 11 3 6;11 10 1 7 3 2 4 9 8 5 6].suppose we want to find whether 3, & 6 then which operator we have to choose???
Stephen23
on 4 Oct 2015
You don't really tell us how you want to use this, which actually decides what method you want to use. So without any further details of what you are trying to achieve, you could use logical indexing:
>> A=[11 5 6 3 10 8 7 4 2 9 1;6 3 11 7 8 5 1 2 4 9 10;10 8 11 6 7 3 9 5 4 1 2;7 1 2 5 9 8 4 10 11 3 6;11 10 1 7 3 2 4 9 8 5 6]
A =
11 5 6 3 10 8 7 4 2 9 1
6 3 11 7 8 5 1 2 4 9 10
10 8 11 6 7 3 9 5 4 1 2
7 1 2 5 9 8 4 10 11 3 6
11 10 1 7 3 2 4 9 8 5 6
>> X = A==3 | A==6
X =
0 0 1 1 0 0 0 0 0 0 0
1 1 0 0 0 0 0 0 0 0 0
0 0 0 1 0 1 0 0 0 0 0
0 0 0 0 0 0 0 0 0 1 1
0 0 0 0 1 0 0 0 0 0 1
>> A(X)
ans =
6
3
6
3
6
3
3
3
6
6
Also note that on MATLAB Answers it is considered polite to Accept an answer that best resolves your question.
prema13
on 4 Oct 2015
how we partitioning this matrix.suppose 3 & 6 training data set or other than testing data set??
Stephen23
on 4 Oct 2015
Then you can use the logical indexing to select the training and test sets:
trainSet = A(X);
testSet = A(~X);
prema13
on 19 Oct 2015
thx a lot
prema13
on 19 Oct 2015
how we find trainSet or testSet in form of row or column????
It is not clear what you mean by "how we find trainSet or testSet in form of row or column": do you want to select columns of data from the matrix, or split the matrix column-wise into test and training sets?
More Answers (0)
Categories
Find more on Logical in Help Center and File Exchange
Tags
See Also
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)