# [R] From vector to a step function

Alaios alaios at yahoo.com
Tue Jan 11 13:59:10 CET 2011

```Dear Jim Holtman,
I would like to thank you for your help.
Just to update also the community that worked fine :)

Best Regards
Alex

--- On Mon, 1/10/11, jim holtman <jholtman at gmail.com> wrote:

> From: jim holtman <jholtman at gmail.com>
> Subject: Re: [R] From vector to a step function
> To: "Alaios" <alaios at yahoo.com>
> Cc: r-help at r-project.org
> Date: Monday, January 10, 2011, 5:44 PM
> try this:
>
> > f.main <- function(vec){
> +     breaks <- seq(-3, by = 1,
> length = length(vec) + 1L)
> +     function(x){
> +         indx <-
> findInterval(x, breaks)
> +         vec[indx]
> +     }
> + }
> > f1 <- f.main(c(3,4,5,1,2,3,4,5))
> > f2 <- f.main(c(5,6,2,4,7,3,2,5))
> > f3 <- f.main(c(1,2,4,7,3,1,3,5))
> >
> > f1(c(-2.5,-2,-.5,0,.5,1.5,2.5))
> [1] 3 4 5 1 1 2 3
> > f2(c(-2.5,-2,-.5,0,.5,1.5,2.5))
> [1] 5 6 2 4 4 7 3
> > f3(c(-2.5,-2,-.5,0,.5,1.5,2.5))
> [1] 1 2 4 7 7 3 1
> >
>
>
> On Mon, Jan 10, 2011 at 11:42 AM, Alaios <alaios at yahoo.com>
> wrote:
> > Greetings R members.
> >
> > I have a few vectors that denote the 'steps' of
> different step functions
> > v1=c(3,4,5,1,2,3,4,5)
> > v2=c(5,6,2,4,7,3,2,5)
> > v3=c(1,2,4,7,3,1,3,5)
> >
> > Here v1,v2,v3 are considered as the steps for the
> f1,f2,f3 step functions.
> >
> > For example f1 looks like that (step size is always
> same and fixed)
> >
> > f1= 3 (x>=-3,x<-2)
> > f1= 4 (x>=-2,x<-1)
> > f1= 5 (x>=-1,x<0)
> > f1= 1 (x>=0, x<1)
> > and so on.
> >
> > What I only have are these vectors that are
> interpreted as functions (as shown above, x (step is 1
> here). I would like to ask your help of how I can create
> some function that reads one of the vector v1,v2,v3.... and
> returns results that are acceptable by integrate()
> function.
> >
> > Usually integrate wants a pre-defined function like
> > myfunc(x)<-function{ x^2 }
> > but this is not the case here.
> >
> > Could you please give me some hints how I can
> proceed?
> >
> > I would like to thank u in advance for your help
> >
> > Regards
> > Alex
> >
> > ______________________________________________
> > R-help at r-project.org
> mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > and provide commented, minimal, self-contained,
> reproducible code.
> >
>
>
>
> --
> Jim Holtman
> Data Munger Guru
>
> What is the problem that you are trying to solve?
>

```