[BioC] Qspline (again)
Paul Boutros
pcboutro@engmail.uwaterloo.ca
Wed, 30 Oct 2002 16:15:52 -0500 (EST)
Hi again,
> > > > The error message I get is:
> > > > Error in rep(data, t1) : invalid number of copies in "rep"
> > > >
> > >
> > > Try 'traceback()' just after the error message is fired. It may give
> > > us a hint about where this happened.
> >
> > I get:
> > 3: rep(data, t1)
> > 2: array(y.offset, (k - 1))
> > 1: normalize.qspline(data2)
> >
> > Does this help at all?
> It does. I had a hard time with the 'k' thing (and no answer from the
> corresponding author about my questions/remarks/suggestions). I suspect
> that for some reason you do not have the check added. Does the code
> for the function look like follows ?
> -------------------
> if (y.offset <= min.offset) {
> y.offset <- min.offset;
> k <- round(py.inds[1]/min.offset)
> }
>
> ## here is the part I suspect missing ##
> if (k < 1) {
> warning("qspline cannot be performed (insufficient number of
arrays)")
> return(x)
> }
> ## ---- ##
>
> y.offset <- c(0, array(y.offset, (k-1)))
> y.order <- order(target)
> -------------------
This is exactly how my code looks -- the check on array number is not
present.
However, I should note that I am doing this analysis with three arrays.
The code I use looks like this:
> data1 <- read.table("c:\\docume~1\\paul\\dev\\testvals.txt");
> data2 <- data.matrix(data1);
> data2;
qry1.S635 qry1.S532 qry2.S635 qry2.S532 qry3.S635 qry3.S532
H3001A10 613.0 602.5 483.0 633.0 61.0 75.0
H3001A12 1208.5 1019.0 1209.0 1187.0 91.0 153.5
H3001B01 337.0 353.0 619.0 529.5 132.5 153.5
H3001C02 495.0 497.5 64.5 117.5 10.5 59.0
H3001C03 199.5 152.5 301.0 222.0 63.5 95.5
H3001C04 1855.5 1447.0 1969.0 1721.0 286.0 349.0
H3001C07 4765.5 3643.0 4889.0 4401.5 1064.0 1148.0
H3001C09 720.5 894.5 347.0 602.0 188.0 326.5
H3001C11 630.0 536.0 814.5 899.5 20.0 48.5
> c <- normalize.qspline(data2);
Error in rep(data, t1) : invalid number of copies in "rep"
> c <- normalize.qspline(data1);
Error in rep(data, t1) : invalid number of copies in "rep"
I tried adding the code you indicated as missing into the affy.R file.
I now get:
qry1.S635 qry1.S532 qry2.S635 qry2.S532 qry3.S635 qry3.S532
H3001A10 613.0 602.5 483.0 633.0 61.0 75.0
H3001A12 1208.5 1019.0 1209.0 1187.0 91.0 153.5
H3001B01 337.0 353.0 619.0 529.5 132.5 153.5
H3001C02 495.0 497.5 64.5 117.5 10.5 59.0
H3001C03 199.5 152.5 301.0 222.0 63.5 95.5
H3001C04 1855.5 1447.0 1969.0 1721.0 286.0 349.0
H3001C07 4765.5 3643.0 4889.0 4401.5 1064.0 1148.0
H3001C09 720.5 894.5 347.0 602.0 188.0 326.5
H3001C11 630.0 536.0 814.5 899.5 20.0 48.5
Warning message:
qspline cannot be performed (insufficient number of arrays) in:
normalize.qspline(data2)
This indicates to me that my input data is in an inappropriate format
somehow?
Any ideas where I go from here?
Thanks for your help with this,
Paul