Hi,

I have a solution to concatenate two factors in one but I don't believe 
it is the best one: factor(c(as.character(f1),as.character(f2)))
[1] a a b b b a
Levels: a b


You can always add a level by assigning a new vector at the level vector:
levels(f1) <- c("a","b","c")
f1
[1] a a b
Levels: a b c



udi cohen wrote:
> Hi all,
>
> I hope it's not too trivial for the list - I'm trying to concatenate
> two factor arrays, and obtain the following:
>
>   
>> f1<-factor(c("a","a","b"))
>> f1
>>     
> [1] a a b
> Levels: a b
>   
>> f2<-factor(c("b","b","a"))
>> f2
>>     
> [1] b b a
> Levels: a b
>   
>> c(f1,f2)
>>     
> [1] 1 1 2 2 2 1
>
> Instead of getting:
>
> [1] a a b b b a
> Levels: a b
>
> a related question is: how do I add a level which does not exists yet
> in a factored vector, so I'll be able to add later these values,
> without getting:
>
> In `[<-.factor`(`*tmp*`, 2, value = "c") :
>   invalid factor level, NAs generated
>
> Thanks,
>
> EC
>
> ______________________________________________
> R-help@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.
>
>   

-- 
Alain Guillet
Statistician and Computer Scientist

SMCS - Institut de statistique - Université catholique de Louvain
Bureau d.126
Voie du Roman Pays, 20
B-1348 Louvain-la-Neuve
Belgium

tel: +32 10 47 30 50


	[[alternative HTML version deleted]]

