Arggghhhh! Forgot to add "cls" before the code. Here is the (hopefully)
complete version:
# column names
cls <- colnames(x)
# Transformation
res <- t(
apply(x, 1, function(x){
index <- x %in% c(1,2)
x[index] <- cls[index]
x[!index] <- NA
x
}
)
)
res
HTH,
Jorge
On Wed, Jul 8, 2009 at 7:15 PM, Jorge Ivan Velez
<
jorgeivanvelez@...>wrote:
> Dear Olivella,
> Assuming that x is your data, here is one possible way to do what you want:
>
> t(
> apply(x, 1, function(x){
> index <- x %in% c(1,2)
> x[index] <- cls[index]
> x[!index] <- NA
> x
> }
> )
> )
>
> How big is the data you are dealing with?
>
> HTH,
>
> Jorge
>
>
> On Wed, Jul 8, 2009 at 4:25 PM, Olivella <
olivella@...> wrote:
>
>>
>> Hello,
>>
>> I wish to perform a substitution of certain numerical values in a data
>> matrix with the corresponding column name. For instance, if I have a data
>> matrix
>> V1 V2 V3
>> 2 0 1
>> 0 1 2
>> 1 5 0
>> 5 0 0
>>
>> I want to substitute the `1' and the `2' for the corresponding column
>> name,
>> and make everything else `NA' like this
>> V1 V2 V3
>> V1 NA V3
>> NA V2 V3
>> V1 NA NA
>> NA NA NA
>>
>> I have done this using an explicit `for' loop, but it takes a really long
>> time to finish. Is there any way I can do this using `apply' or some form
>> of
>> implicit looping?
>>
>> Thank you for your help,
>>
>> SO
>> --
>> View this message in context:
>>
http://www.nabble.com/Substituting-numerical-values-using-%60apply%27-tp24398687p24398687.html>> Sent from the R help mailing list archive at Nabble.com.
>>
>> ______________________________________________
>>
R-help@... 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.
>>
>
>
[[alternative HTML version deleted]]
______________________________________________
R-help@... mailing list
https://stat.ethz.ch/mailman/listinfo/r-helpPLEASE do read the posting guide
http://www.R-project.org/posting-guide.htmland provide commented, minimal, self-contained, reproducible code.