<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
  <channel>
    <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034</link>
    <title>MATLAB Central Newsreader - count number of 1's in the matrix</title>
    <description>Feed for thread: count number of 1's in the matrix</description>
    <language>en-us</language>
    <copyright>&amp;copy;1994-2012 by MathWorks, Inc.</copyright>
    <webmaster>webmaster@mathworks.com</webmaster>
    <generator>MATLAB Central Newsreader</generator>
    <docs>http://blogs.law.harvard.edu/tech/rss</docs>
    <ttl>60</ttl>
    <image>
      <title>MathWorks</title>
      <url>http://www.mathworks.com/images/membrane_icon.gif</url>
    </image>
    <item>
      <pubDate>Tue, 30 Jun 2009 20:33:01 -0400</pubDate>
      <title>count number of 1's in the matrix</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034#661649</link>
      <author>Diego Lass</author>
      <description>Hi &lt;br&gt;
I have a matrix with 0's, 1's.  I want to count the number of 1's. &lt;br&gt;
A = [1 0 0 0 1 0; 1 0 0 0 1 1; 0 0 0 0 1 1]&lt;br&gt;
&lt;br&gt;
What is the most efficient way of doing this?&lt;br&gt;
Thanks&lt;br&gt;
Diego</description>
    </item>
    <item>
      <pubDate>Tue, 30 Jun 2009 20:38:07 -0400</pubDate>
      <title>Re: count number of 1's in the matrix</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034#661651</link>
      <author>Nathan</author>
      <description>On Jun 30, 1:33&#160;pm, &quot;Diego Lass&quot; &amp;lt;dlISC...@gmail.com&amp;gt; wrote:&lt;br&gt;
&amp;gt; Hi&lt;br&gt;
&amp;gt; I have a matrix with 0's, 1's. &#160;I want to count the number of 1's.&lt;br&gt;
&amp;gt; A = [1 0 0 0 1 0; 1 0 0 0 1 1; 0 0 0 0 1 1]&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; What is the most efficient way of doing this?&lt;br&gt;
&amp;gt; Thanks&lt;br&gt;
&amp;gt; Diego&lt;br&gt;
&lt;br&gt;
I'd just do:&lt;br&gt;
count = sum(sum(A));</description>
    </item>
    <item>
      <pubDate>Tue, 30 Jun 2009 20:47:01 -0400</pubDate>
      <title>Re: count number of 1's in the matrix</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034#661653</link>
      <author>dpb</author>
      <description>Nathan wrote:&lt;br&gt;
&amp;gt; On Jun 30, 1:33 pm, &quot;Diego Lass&quot; &amp;lt;dlISC...@gmail.com&amp;gt; wrote:&lt;br&gt;
&amp;gt;&amp;gt; Hi&lt;br&gt;
&amp;gt;&amp;gt; I have a matrix with 0's, 1's.  I want to count the number of 1's.&lt;br&gt;
&amp;gt;&amp;gt; A = [1 0 0 0 1 0; 1 0 0 0 1 1; 0 0 0 0 1 1]&lt;br&gt;
&amp;gt;&amp;gt;&lt;br&gt;
&amp;gt;&amp;gt; What is the most efficient way of doing this?&lt;br&gt;
&amp;gt;&amp;gt; Thanks&lt;br&gt;
&amp;gt;&amp;gt; Diego&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; I'd just do:&lt;br&gt;
&amp;gt; count = sum(sum(A));&lt;br&gt;
&lt;br&gt;
Which works as long as A == 0|1&lt;br&gt;
&lt;br&gt;
length(A(A==1))&lt;br&gt;
&lt;br&gt;
works elsewhere as well.&lt;br&gt;
&lt;br&gt;
--</description>
    </item>
    <item>
      <pubDate>Tue, 30 Jun 2009 20:53:01 -0400</pubDate>
      <title>Re: count number of 1's in the matrix</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034#661654</link>
      <author>Bruno Luong</author>
      <description>nnz(A)&lt;br&gt;
&lt;br&gt;
Bruno</description>
    </item>
    <item>
      <pubDate>Tue, 30 Jun 2009 21:32:42 -0400</pubDate>
      <title>Re: count number of 1's in the matrix</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034#661669</link>
      <author>Ashish Uthama</author>
      <description>On Tue, 30 Jun 2009 16:53:01 -0400, Bruno Luong  &lt;br&gt;
&amp;lt;b.luong@fogale.findmycountry&amp;gt; wrote:&lt;br&gt;
&lt;br&gt;
&amp;gt; nnz(A)&lt;br&gt;
&amp;gt;&lt;br&gt;
&amp;gt; Bruno&lt;br&gt;
&lt;br&gt;
%as noted earlier, SUM works only for 1/0 matrices&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; d=double(rand(5010)&amp;gt;.5);&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()nnz(d))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0.13992&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()sum(sum(d)))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0.031067</description>
    </item>
    <item>
      <pubDate>Tue, 30 Jun 2009 21:46:01 -0400</pubDate>
      <title>Re: count number of 1's in the matrix</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034#661674</link>
      <author>Bruno Luong</author>
      <description>&quot;Ashish Uthama&quot; &amp;lt;first.last@mathworks.com&amp;gt; wrote in message &amp;lt;op.uwcwssi0a5ziv5@uthamaa.dhcp.mathworks.com&amp;gt;...&lt;br&gt;
&amp;gt; On Tue, 30 Jun 2009 16:53:01 -0400, Bruno Luong  &lt;br&gt;
&amp;gt; &amp;lt;b.luong@fogale.findmycountry&amp;gt; wrote:&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &amp;gt; nnz(A)&lt;br&gt;
&amp;gt; &amp;gt;&lt;br&gt;
&amp;gt; &amp;gt; Bruno&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; %as noted earlier, SUM works only for 1/0 matrices&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &amp;gt;&amp;gt; d=double(rand(5010)&amp;gt;.5);&lt;br&gt;
&amp;gt; &amp;gt;&amp;gt; timeit(@()nnz(d))&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; ans =&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;        0.13992&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; &amp;gt;&amp;gt; timeit(@()sum(sum(d)))&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt; ans =&lt;br&gt;
&amp;gt; &lt;br&gt;
&amp;gt;       0.031067&lt;br&gt;
&lt;br&gt;
If one want speed, then sum(d(:)) is probably the fastest.&lt;br&gt;
&lt;br&gt;
Bruno</description>
    </item>
    <item>
      <pubDate>Tue, 30 Jun 2009 22:25:03 -0400</pubDate>
      <title>Re: count number of 1's in the matrix</title>
      <link>http://www.mathworks.com/matlabcentral/newsreader/view_thread/255034#661681</link>
      <author>Bruno Luong</author>
      <description>&amp;gt;&amp;gt; d=double(rand(5010)&amp;gt;.5);&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()nnz(d))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0.1583&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()sum(d(:)))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0.0408&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()sum(sum(d)))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0.0409&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; &lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; d=sparse(d);&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()nnz(d))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;2.0785e-005&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()sum(d(:)))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0.2306&lt;br&gt;
&lt;br&gt;
&amp;gt;&amp;gt; timeit(@()sum(sum(d)))&lt;br&gt;
&lt;br&gt;
ans =&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;0.0209&lt;br&gt;
&lt;br&gt;
% Bruno</description>
    </item>
  </channel>
</rss>

