[R] how to allign data

Jim Lemon drj|m|emon @end|ng |rom gm@||@com
Fri Aug 3 00:32:18 CEST 2018


Hi Petr,
I recently had to align the minima of deceleration events to form an
aggregate "braking profile" for different locations. It seems as
though you are looking for something like:

find_increase<-function(x,surround=10) {
 inc_index<-which.max(diff(x))
 indices<-(inc_index-surround):(inc_index+surround)
 nneg<-sum(indices < 1)
 # pad both ends with NA if needed
 newx<-x[1:max(indices)]
 if(nneg > 0) newx<-c(rep(NA,nneg),newx)
 return(newx)
}

Jim

On Thu, Aug 2, 2018 at 10:23 PM, PIKAL Petr <petr.pikal using precheza.cz> wrote:
> Dear all
>
> Before I start to reinvent wheel I would like to ask you if you have some easy solution for aligning data
>
> I have something like this
> x<-1:100
> set.seed(42)
> y1<-c(runif(20)+1, 1.2*x[1:80]+runif(80))
> y2<-c(runif(40)+1, 1.2*x[1:60]+runif(60))
>
> plot(x,y1)
> points(x,y2, col=2)
>
> with y increase starting at various x.
>
> I would like to allign data so that the increase starts at the same x point, something like
>
> plot(x,y1)
> points(x[-(1:20)]-20,y2[-(1:20)], col=2)
>
> I consider using strucchange or segmented packages to find break(s) and "shift" x values according to this break. But maybe somebody already did similar task (aligning several vectors according to some common breakpoint) and could offer better or simpler solution.
>
> Best regards.
> Petr
> Osobní údaje: Informace o zpracování a ochraně osobních údajů obchodních partnerů PRECHEZA a.s. jsou zveřejněny na: https://www.precheza.cz/zasady-ochrany-osobnich-udaju/ | Information about processing and protection of business partner’s personal data are available on website: https://www.precheza.cz/en/personal-data-protection-principles/
> Důvěrnost: Tento e-mail a jakékoliv k němu připojené dokumenty jsou důvěrné a podléhají tomuto právně závaznému prohláąení o vyloučení odpovědnosti: https://www.precheza.cz/01-dovetek/ | This email and any documents attached to it may be confidential and are subject to the legally binding disclaimer: https://www.precheza.cz/en/01-disclaimer/
>
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> 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.




More information about the R-help mailing list