[R] insert() function

Henrik Bengtsson hb at stat.berkeley.edu
Thu Feb 21 18:26:58 CET 2008


On Thu, Feb 21, 2008 at 4:30 AM, Dani Valverde <daniel.valverde at uab.cat> wrote:
> Hello,
>  I still having problems with insert() from R.utils package. I provide a
>  code with no error:
>
> x <- seq(1:10909)
>  x1 <- c(13112-10909)
>  spect1 <- rnorm(10909)
>
> interpol <- approx(x,spect1,xout=c(seq(from=1, by=((10909 - 1)/(x1 -1)),
>  length.out=x1)))
>  pos <- round(interpol$x,0)
>  intensities <- interpol$y
>
> str(spect1)
>  str(pos)
>  str(intensities)

So what does these output?  They are the ones that will give you a
lead to solving your problem, which I think is unrelated to insert().

/Henrik

>
>  Then, when I call:
>  library(R.utils)
>
> spect2 <- insert(spect1,ats=pos,values=intensities)
>
>  I have this error:
>
>
>  Error in list("insert(spect1, ats = pos, values = intensities)" =
>  <environment>,  :
>
>  [2008-02-21 13:27:49] Exception: Argument 'ats' and argument 'values'
>
> has different lengths: 2203 != 1
>   at throw(Exception(...))
>   at throw.default("Argument 'ats' and argument 'values' has different
>  lengths: ", length(ats), " != ", length(values))
>   at throw("Argument 'ats' and argument 'values' has different lengths:
>  ", length(ats), " != ", length(values))
>   at insert.default(spect1, ats = pos, values = intensities)
>   at insert(spect1, ats = pos, values = intensities)
>
>  You see that I still having the error, even calling the str() function
>  before insert().
>  Here there is my sessionInfo():
>
>  R version 2.6.2 (2008-02-08)
>  i386-pc-mingw32
>
>  locale:
>  LC_COLLATE=Spanish_Spain.1252;LC_CTYPE=Spanish_Spain.1252;LC_MONETARY=Spanish_Spain.1252;LC_NUMERIC=C;LC_TIME=Spanish_Spain.1252
>
>  attached base packages:
>  [1] datasets  stats     graphics  grDevices tcltk     utils
>  methods   base
>
>  other attached packages:
>   [1] R.utils_0.9.8        R.oo_1.4.1           R.methodsS3_1.0.0
>  Hmisc_3.4-3          MASS_7.2-40          scatterplot3d_0.3-25
>  NMRTools_1.0.2
>   [8] svSocket_0.9-5       svIO_0.9-5           R2HTML_1.58
>  svMisc_0.9-5         svIDE_0.9-5
>
>  loaded via a namespace (and not attached):
>  [1] cluster_1.11.9 grid_2.6.2     lattice_0.17-6 tools_2.6.2
>
>  Can you help?
>
> Best,
>
>  Dani
>
>  Daniel Valverde Saubí
>
>  Grup de Biologia Molecular de Llevats
>  Facultat de Veterinària de la Universitat Autònoma de Barcelona
>  Edifici V, Campus UAB
>  08193 Cerdanyola del Vallès- SPAIN
>
>  Centro de Investigación Biomédica en Red
>  en Bioingeniería, Biomateriales y
>  Nanomedicina (CIBER-BBN)
>
>  Grup d'Aplicacions Biomèdiques de la RMN
>  Facultat de Biociències
>  Universitat Autònoma de Barcelona
>  Edifici Cs, Campus UAB
>  08193 Cerdanyola del Vallès- SPAIN
>  +34 93 5814126
>
>
>
>  En/na Henrik Bengtsson ha escrit:
>
>
> > Hi.
>  >
>  > On Feb 20, 2008 2:38 AM, Dani Valverde <daniel.valverde at uab.cat> wrote:
>  >
>  >> Hello,
>  >> I am trying to insert a certain number of points into a certain position
>  >> of a vector with this code:
>  >> x <- seq(1:10909)
>  >> x1 <- c(13112-10909)
>  >> spect1 <- rnorm(13112)
>  >> interpol <- approx(x,spect1,xout=c(seq(from=1, by=((10909 - 1)/(x1 -
>  >> 1)), length.out=x1)))
>  >> pos <- round(interpol$x,0)
>  >> intensities <- interpol$y
>  >>
>  >
>  > Please provide reproducible code that does not give an error.
>  >
>  >
>  >> spect2 <- insert(spect1,ats=pos,values=intensities)
>  >>
>  >
>  > Is this the famous insert() in R.utils?   Please give your
>  > sessionInfo() to help others see what you are using.  I repeat, please
>  > provide us with sessionInfo().
>  >
>  >
>  >> "interpol" object is the result of interpoling the missing x values with
>  >> respect to spect1. "pos" object is a vector with the indexes where the
>  >> values are to be placed (it is the rounded values of interpol$x) and
>  >> "intensities" is a vector with the values to be inserted. I try to
>  >> insert the values of "intensities" into the positions specified by "pos"
>  >> in the "x" vector using the insert() functions as shown in the code I
>  >> paste, but I get this error:
>  >>
>  >> Error in list("insert(spect1, ats = pos, values = intensities)" =
>  >> <environment>,  :
>  >>
>  >> [2008-02-20 11:36:28] Exception: Argument 'ats' and argument 'values'
>  >> has different lengths: 2203 != 1
>  >>   at throw(Exception(...))
>  >>   at throw.default("Argument 'ats' and argument 'values' has different
>  >> lengths: ", length(ats), " != ", length(values))
>  >>   at throw("Argument 'ats' and argument 'values' has different lengths:
>  >> ", length(ats), " != ", length(values))
>  >>   at insert.default(spect1, ats = pos, values = intensities)
>  >>   at insert(spect1, ats = pos, values = intensities)
>  >>
>  >> Can anyone help me on how can I solve it? I know that "pos" and
>  >> "intensities" have the same length, so I don't know why I get this
>  >> error. Any ideas will be welcome.
>  >>
>  >
>  > I challenge that claim, because one of the first assertions insert()
>  > (of R.utils) does is:
>  >
>  >    if (length(ats) != length(values))
>  >        throw("Argument 'ats' and argument 'values' has different lengths: ",
>  >            length(ats), " != ", length(values))
>  >
>  > Do the following before you call insert() to troubleshoot your data:
>  >
>  > str(spect1)
>  > str(pos)
>  > str(intensities)
>  >
>  > /Henrik
>  >
>  >
>  >> Best,
>  >>
>  >> Dani
>  >>
>  >> --
>  >> Daniel Valverde Saubí
>  >>
>  >> Grup de Biologia Molecular de Llevats
>  >> Facultat de Veterinària de la Universitat Autònoma de Barcelona
>  >> Edifici V, Campus UAB
>  >> 08193 Cerdanyola del Vallès- SPAIN
>  >>
>  >> Centro de Investigación Biomédica en Red
>  >> en Bioingeniería, Biomateriales y
>  >> Nanomedicina (CIBER-BBN)
>  >>
>  >> Grup d'Aplicacions Biomèdiques de la RMN
>  >> Facultat de Biociències
>  >> Universitat Autònoma de Barcelona
>  >> Edifici Cs, Campus UAB
>  >> 08193 Cerdanyola del Vallès- SPAIN
>  >> +34 93 5814126
>  >>
>  >> ______________________________________________
>  >> 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.
>  >>
>  >>
>  >
>  >
>



More information about the R-help mailing list