フィルターのクリア

how to find the number of 1 in a single column?

4 ビュー (過去 30 日間)
Sivakumaran Chandrasekaran
Sivakumaran Chandrasekaran 2012 年 9 月 5 日
My input is
0 0 0 0 1 0 0 1 1 0 0 0 1 0
I should find how many 1 is present
  2 件のコメント
Azzi Abdelmalek
Azzi Abdelmalek 2012 年 9 月 5 日
is it a string ?
Azzi Abdelmalek
Azzi Abdelmalek 2012 年 9 月 5 日
what is the real question?

サインインしてコメントする。

回答 (6 件)

Jan
Jan 2012 年 9 月 5 日
編集済み: Jan 2012 年 9 月 5 日
If it is a string:
c = '0 0 0 0 1 0 0 1 1 0 0 0 1 0';
s = sum(c == '1');
% or:
s = length(strfind(c, '1');
if it is a numeric vector:
c = [0 0 0 0 1 0 0 1 1 0 0 0 1 0];
s = sum(c); % as Jose-Luis has suggested already
% or:
s = nnz(c);

José-Luis
José-Luis 2012 年 9 月 5 日
編集済み: José-Luis 2012 年 9 月 5 日
your_answer = sum(your_input)

Azzi Abdelmalek
Azzi Abdelmalek 2012 年 9 月 5 日
c='0 0 0 0 1 0 0 1 1 0 0 0 1 0'
sum(str2num(c))

Sivakumaran Chandrasekaran
Sivakumaran Chandrasekaran 2012 年 9 月 5 日
Thanks for all replies...
1 1
1 2
3 1
2 1
3 1
1 2
3 2
2 1
3 1
2 1
3 2
2 2
3 1
2 2

Sivakumaran Chandrasekaran
Sivakumaran Chandrasekaran 2012 年 9 月 5 日
thats my input matrix.. let me take query input as 1 1... now i have to check this 1 1 with all the rows of the given input matrix.. I have find the rows which matches this input.
  2 件のコメント
Sivakumaran Chandrasekaran
Sivakumaran Chandrasekaran 2012 年 9 月 5 日
when i take the first row as the query one, and if i found it is matching with 5th, then output should be displayed as [1,5]
José-Luis
José-Luis 2012 年 9 月 5 日
your_result = find(ismember(your_matrix,[1 2],'rows'))';

サインインしてコメントする。


Matt Tearle
Matt Tearle 2012 年 9 月 5 日
編集済み: Matt Tearle 2012 年 9 月 5 日
idx = find(all(bsxfun(@eq,x,y),2));
where x is your matrix and y is your test vector (eg y = x(1,:), in your example). For example
x = randi(4,1000,5);
y = x(3,:);
idx = find(all(bsxfun(@eq,x,y),2))

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by