[R] Extending a vector to length n
Raubertas, Richard
richard_raubertas at merck.com
Thu Apr 16 19:16:45 CEST 2009
The following approach works for both of your examples:
xx <- rep(x, length.out=n)
xx[m:n] <- NA
Thus:
> n <- 2
> aa <- rep(a, length.out=n)
> aa[(length(a)+1):n] <- NA
> aa
[1] "2008-01-01" NA
> bb <- rep(b, length.out=n)
> bb[(length(b)+1):n] <- NA
> bb
[1] a <NA>
Levels: a
>
R. Raubertas
Merck & Co
> -----Original Message-----
> From: r-help-bounces at r-project.org
> [mailto:r-help-bounces at r-project.org] On Behalf Of hadley wickham
> Sent: Wednesday, April 15, 2009 10:55 AM
> To: r-help
> Subject: [R] Extending a vector to length n
>
> In general, how can I increase a vector of length m (< n) to length n
> by padding it with m - n missing values, without losing attributes?
> The two approaches I've tried, using length<- and adding missings with
> c, do not work in general:
>
> > a <- as.Date("2008-01-01")
> > c(a, NA)
> [1] "2008-01-01" NA
> > length(a) <- 2
> > a
> [1] 13879 NA
>
>
> > b <- factor("a")
> > c(b, NA)
> [1] 1 NA
> > length(b) <- 2
> > b
> [1] a <NA>
> Levels: a
>
> Hadley
>
>
>
> --
> http://had.co.nz/
>
> ______________________________________________
> 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.
>
Notice: This e-mail message, together with any attachme...{{dropped:12}}
More information about the R-help
mailing list