# [R] Enquiry regarding Apply

From: Bob Green <bgreen_at_dyson.brisnet.org.au>
Date: Tue 02 May 2006 - 22:41:42 EST

I want to compute a new variable (newvar) based on the values of two other variables (t1freq, t2freq).The two variables (t1freq,t2freq) are contained in a dataframe - study1dat <- read.csv("c:\\study1rb.csv",header=T) .

I gather this computation can be done using Apply and I have run the following example from the help menu

## Compute row and column sums for a matrix:

```      x <- cbind(x1 = 3, x2 = c(4:1, 2:5))
dimnames(x)[[1]] <- letters[1:8]
apply(x, 2, mean, trim = .2)
col.sums <- apply(x, 2, sum)
row.sums <- apply(x, 1, sum)
rbind(cbind(x, Rtot = row.sums), Ctot = c(col.sums, sum(col.sums)))

```

My questions are:

1. I don't understand what values I would need to enter for my 2 variables (data is included at end of this message) in the 'cbind' command
2. For the second row, what modification is required?
3. If I wanted to compute a mean, I believe the 'mean' is substituted for sum - if so, in the case where there is only one value, is it possible to obtain this as the mean rather than obtaining an NA?
4. How do I save 'newvar' into the original datafile?

Any assistance with this enquiry is appreciated,

Bob

id t1freq t2freq

```1       4      6
2       3      3
3       7      5
4       0      2
5       1      4
6       7      7
7       7      7
8       7      4
9       7      7
10      5      4
11      3      6
12      1      3
13      7      7
14      7      7
15      1      3
16      7      7
17      2      1
18      7      7
19      7      6
20      3      4
21      7      7
22      7      6
23      3      0
24      7      6
25      7      6
26      5      6
27      7      7
28      7      7
29      5      7
30      7      2
31      5      6
32      5      7
33      7      7
34      7      7
35      7      7
36      7      7
37      6      5
38      4      4
39      4      6
40      7      7
41      3      3
42      4      4
43      7      7
44      7      7
45      7      1
46      2      2
47      4      2
48      1      1
49      4      4
50      0      0
51      7      7
52      7      2
53      4      7
54      0     NA
55      5      4
56      0      0
57      5      5
58      5      6
59      7      7
60      5      4
61      1      4
62      6      7
63      4      5
64      6      7
65      5      4
66      1      0
67      7      7
68      5      3
69      7      7
70      4      7
71      3      7
72      7      7
73      4      2
74      4      6
75      7      5
76      0      0
77      7      6
78      3      3
79      7      7
80      2      4
81      4      1
82      1      4
83      4      2
84      2      1
85      5      0
86      1      3
87      0      0
88      7      7
89      3      1
90      6      6
91      2      1
92      4      3

______________________________________________
```
R-help@stat.math.ethz.ch mailing list