Most of your counting needs can be handled elegantly with the xtabs()
function (cross-tabulation). This'll work a lot faster than an iterative
method. For your data I would suggest something like this:
# Create a column indicating whether or not the value in Col2 is above 5
dataset$Col2greaterthan
On Sep 16, 2012, at 3:41 AM, SirRon wrote:
> Hello,
> I'm working with a dataset that has 2 columns and 1000 entries. Column 1 has
> either value 0 or 1, column 2 has values between 0 and 10. I would like to
> count how often Column 1 has the value 1, while Column 2 has a value greater
> 5.
>
>
On 2012-09-16 05:04, Rui Barradas wrote:
Hello,
Since logical values F/T are coded as integers 0/1, you can use this:
set.seed(5712) # make it reproducible
n <- 1e3
x <- data.frame(A = sample(0:1, n, TRUE), B = sample(0:10, n, TRUE))
count <- sum(x$A == 1 & x$B > 5) # 207
Another way:
HI,
Try this:
set.seed(1)
dat1<-data.frame(col1=sample(0:1,1000,replace=TRUE),col2=sample(0:10,1000,replace=TRUE))
count(dat1$col1==1 & dat1$col2>5)[2,2]
#[1] 209
A.K.
- Original Message -
From: SirRon
To: r-help@r-project.org
Cc:
Sent: Sunday, September 16, 2012 6:41 AM
Subject: [R]
Hello,
Since logical values F/T are coded as integers 0/1, you can use this:
set.seed(5712) # make it reproducible
n <- 1e3
x <- data.frame(A = sample(0:1, n, TRUE), B = sample(0:10, n, TRUE))
count <- sum(x$A == 1 & x$B > 5) # 207
Hope this helps,
Rui Barradas
Em 16-09-2012 11:41, SirRon
On 16.09.2012 12:41, SirRon wrote:
Hello,
I'm working with a dataset that has 2 columns and 1000 entries. Column 1 has
either value 0 or 1, column 2 has values between 0 and 10. I would like to
count how often Column 1 has the value 1, while Column 2 has a value greater
5.
This is my attempt,
6 matches
Mail list logo