[R] Beginner question: select cases

Doran, Harold HDoran at air.org
Mon Sep 25 14:11:30 CEST 2006

```Peter,

There is a much easier way to do this. First, you should consider

set.seed(1) # for replication only

# Here is a sample dataframe
tmp <- data.frame(city = gl(3,10, label = c("London", "Rome","Vienna"
)), q1 = rnorm(30))

# Compute the means
with(tmp, tapply(q1,city, mean))
London       Rome     Vienna
0.1322028  0.2488450 -0.1336732

I hope this helps

> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch
> [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Peter
> Wolkerstorfer - CURE
> Sent: Monday, September 25, 2006 7:51 AM
> To: r-help at stat.math.ethz.ch
> Subject: [R] Beginner question: select cases
>
> Hello all,
>
> I hope i chose the right list as my question is a beginner-question.
>
> I have a data set with 3 colums  "London", "Rome" and
> "Vienna" - the location is presented through a 1 like this:
> London 	Rome 	Vienna	q1
> 0		0	1		4
> 0		1	0		2
> 1		0	0		3
> ....
> ....
> ....
>
> I just want to calculate the means of a variable q1.
>
> I tried following script:
>
> # calculate the mean of all locations
> results <- subset(results, subset== 1 )
> mean(results\$q1)
> # calculate the mean of London
> results <- subset(results, subset== 1 , select=c(London))
> mean(results\$q1)
> # calculate the mean of Rome
> results <- subset(results, subset== 1 , select=c(Rome))
> mean(results\$q1)
> # calcualate the mean of Vienna
> results <- subset(results, subset== 1 , select=c(Vienna))
> mean(results\$q1)
>
> As all results are 1.68 and there is defenitely a difference
> in the three locations I wonder whats going on.
> I get confused as the Rcmdr asks me to overwrite things and
> there is no "just filter" option.
>
> Any help would be apprechiated. Thank you in advance.
>
> Regards
> Peter
>
>
>
> ___CURE - Center for Usability Research & Engineering___
>
> Peter Wolkerstorfer
> Usability Engineer
> Hauffgasse 3-5, 1110 Wien, Austria
>
> [Tel]  +43.1.743 54 51.46
> [Fax]  +43.1.743 54 51.30
>
> [Mail] wolkerstorfer at cure.at
> [Web]  http://www.cure.at
>
> ______________________________________________
> R-help at stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help