Hello!

I'm trying the hard way to use a formula, in a function, to specify the names of several important columns in a data.frame. Maybe I'm just battling to figure out the right search terms :-( This is on XP, R 1.8.1.

So, for instance,

wery[1:5,]

  V1 V2   V3  V4    V5 congr V7 V8 V9 ok  RT
1   1  1  960 520  1483     c  1  r  r  1 760
2   1  2 1060 450  3753     c  1  r  r  1 555
3   1  3  980 470  5758     c  2  l  l  1 432
4   1  4 1060 440  7693     c  1  r  r  1 424
5   1  5 1020 440  9578     i  1  l  l  1 369

I already figured out how to get to the parts of the formula,

tst <- function(f=RT~congr+ok, data=wery) {
thingy <- all.vars(f)
resp <- thingy[1]
facts <- thingy[-1]

# and how to get data from the data.frame.
eval(parse(text=resp), env=data)

# But now, I would like to do here what I'd do on the console as
# wery$ok <- factor(wery$ok), so here data$facts[2] <- factor(data$facts[2])
# This won't work here. How do I continu?

# Or perhaps also
# data.tmp <- data$resp[data$facts[1] == 'i']
}


thank you, Paul Lemmens

P.S:
str(wery)
`data.frame':   150 obs. of  11 variables:
$ V1   : int  1 1 1 1 1 1 1 1 1 1 ...
$ V2   : int  1 2 3 4 5 6 7 8 9 10 ...
$ V3   : int  960 1060 980 1060 1020 1010 1060 1010 1090 1090 ...
$ V4   : int  520 450 470 440 440 530 580 530 560 540 ...
$ V5   : int  1483 3753 5758 7693 9578 11488 13423 15368 17548 19678 ...
$ congr: Factor w/ 2 levels "c","i": 1 1 1 1 2 2 2 1 1 2 ...
$ V7   : int  1 1 2 1 1 1 1 2 2 2 ...
$ V8   : Factor w/ 2 levels "l","r": 2 2 1 2 1 1 1 1 1 2 ...
$ V9   : Factor w/ 2 levels "l","r": 2 2 1 2 1 2 1 1 1 2 ...
$ ok   : int  1 1 1 1 1 0 1 1 1 1 ...
$ RT   : int  760 555 432 424 369 291 403 526 500 458 ...




-- Paul Lemmens NICI, University of Nijmegen ASCII Ribbon Campaign /"\ Montessorilaan 3 (B.01.05) Against HTML Mail \ / NL-6525 HR Nijmegen X The Netherlands / \ Phonenumber +31-24-3612648 Fax +31-24-3616066

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Reply via email to