[R] ddply - how to transform df column "in place"

Ista Zahn izahn at psych.rochester.edu
Wed Aug 24 00:30:24 CEST 2011


Hi Jean,

On Tue, Aug 23, 2011 at 6:16 PM, jjap <jean.plamondon at fpinnovations.ca> wrote:
> Dear R-users,
>
> I am trying to get the plyr syntax right, without much success.
>
> Given:
> d<- data.frame(cbind(x=1,y=seq(20100801,20100830,1)))
> names(d)<-c("first", "daterep")
> d2<-d
>
> # I can convert the daterep column in place the classic way:
> d$daterep<-as.Date(strptime(d$daterep, format="%Y%m%d"))
>
> # How to do it the plyr way?
> ddply(d2, c("daterep"), function(df){as.Date(df, format="%Y%m%d")})
> # returns: Error in as.Date.default(df, format = "%Y%m%d") :
> #   do not know how to convert 'df' to class "Date"

There is no "plyr way" to do this, as this is not the kind of
operation plyr is designed to carry out. plyr is designed to simplify
the process of 1) splitting the data into groups, 2) operating on each
group, and 3) putting the results back together. Since your example
does not involve this kind of split-apply-combine approach plyr will
not help you.

HTH,
Ista

>
> Thanks for any hints,
>
> ---jean
>
> --
> View this message in context: http://r.789695.n4.nabble.com/ddply-how-to-transform-df-column-in-place-tp3764037p3764037.html
> Sent from the R help mailing list archive at Nabble.com.
>
> ______________________________________________
> 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.
>



-- 
Ista Zahn
Graduate student
University of Rochester
Department of Clinical and Social Psychology
http://yourpsyche.org



More information about the R-help mailing list