Message-ID: <CAErHZW2v9j71iAfeFx55wVwMwQ5awS28Vjdy-hjJV3-3vwbrHA@mail.gmail.com>
Date: 2011-10-07T15:25:47Z
From: Ana
Subject: function - access column
In-Reply-To: <2E664047-6BEF-4AE8-9A27-02EA76D422CA@gmail.com>
Thanks! It helps. I completely forgot about the colnames function
I added a "which(colnames(m)==n)" to my own function and now I can
access with no problem the column by the number instead of the name.
On Fri, Oct 7, 2011 at 5:09 PM, R. Michael Weylandt
<michael.weylandt at gmail.com> <michael.weylandt at gmail.com> wrote:
> Perhaps something like this:
>
> Test <- function(m){
> ? ? m <- if(is.character(m)) get(m) else m
> ? ? stopifnot(length(colnames(m))>0)
> ? ? n = colnames(m)
> ? ? # Process n however
> ? ? 2* m[, n]
> }
>
> That make sense?
>
> Hope it helps,
> Michael
>
>
> On Oct 7, 2011, at 11:03 AM, Ana <rrasterr at gmail.com> wrote:
>
>> How can I call matrix$col, inside a function?
>> The matrix name is one of the variables of the function, while the
>> column name I get by assuming that it should have a certain
>> characters.
>>
>> something like this
>>
>> function(matrix){
>> colname=as.name(grep("[A-T a-t]ting",colnames(matrix),value=TRUE))
>> output=2*(matrix$colname)
>> return(output)
>> }
>>
>> The name of the column is Testing.
>>
>> ______________________________________________
>> R-help at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>