[R] negative vector length when merging data frames

Jeff Newmiller jdnewm|| @end|ng |rom dcn@d@v|@@c@@u@
Thu Oct 24 02:51:45 CEST 2019


Ana... contributed packages like data.table and dplyr are developed completely independently from R, have their own versions, and in fact both of them have recommendations as to how to report bugs in their package descriptions.

As for getting help here, you really need to supply ALL of the information requested to make forward progress in clarifying next steps... there were several items that Duncan mentioned that you failed to provide.

Also, note that dplyr and data.table take very different approaches to handling data, and have been known to not play well with each other. At the very least I would suggest using as.data.frame to convert to a standardized data representation before switching from using functions in one of these packages to using functions in the other package.

[1] https://cran.r-project.org/web/packages/data.table/index.html

[2] https://cran.r-project.org/web/packages/dplyr/index.html

On October 23, 2019 5:05:44 PM PDT, Ana Marija <sokovic.anamarija using gmail.com> wrote:
>I am using R-3.6.1
>and these libraries:
>library(data.table)
>library(dplyr)
>
>On Wed, Oct 23, 2019 at 6:54 PM Duncan Murdoch
><murdoch.duncan using gmail.com> wrote:
>>
>> On 23/10/2019 7:04 p.m., Ana Marija wrote:
>> > I also tried left_join but I got: Error: std::bad_alloc
>> >
>> >> df3 <- left_join(l4, asign, by = c("chr","pos")
>> > Error: std::bad_alloc
>>
>> Looks like bugs in whatever package you're finding "left_join" in
>(and
>> previously "merge").  Are those from dplyr and base?  Showing us
>> str(lr), str(asign), and sessionInfo() would be helpful.
>>
>> Duncan Murdoch
>>
>> >> dim(l4)
>> > [1] 166941635         8
>> >> dim(asign)
>> > [1] 107371528         5
>> >
>> > On Wed, Oct 23, 2019 at 5:32 PM Ana Marija
><sokovic.anamarija using gmail.com> wrote:
>> >>
>> >> Hello,
>> >>
>> >> I have two data frames like this:
>> >>
>> >>> head(l4)
>> >>      X1    X2 X3 X4  X5  variant_id pval_nominal     gene_id.LCL
>> >> 1 chr1 13550  G  A b38 1:13550:G:A     0.375614 ENSG00000227232
>> >> 2 chr1 14671  G  C b38 1:14671:G:C     0.474708 ENSG00000227232
>> >> 3 chr1 14677  G  A b38 1:14677:G:A     0.699887 ENSG00000227232
>> >> 4 chr1 16841  G  T b38 1:16841:G:T     0.127895 ENSG00000227232
>> >> 5 chr1 16856  A  G b38 1:16856:A:G     0.627822 ENSG00000227232
>> >> 6 chr1 17005  A  G b38 1:17005:A:G     0.802803 ENSG00000227232
>> >>> head(asign)
>> >>                gene  chr                chr_pos   pos p.val.Retina
>> >> 1: ENSG00000227232 chr1           1:10177:A:AC 10177     0.381708
>> >> 2: ENSG00000227232 chr1 rs145072688:10352:T:TA 10352     0.959523
>> >> 3: ENSG00000227232 chr1            1:11008:C:G 11008     0.218132
>> >> 4: ENSG00000227232 chr1            1:11012:C:G 11012     0.218132
>> >> 5: ENSG00000227232 chr1            1:13110:G:A 13110     0.998262
>> >> 6: ENSG00000227232 chr1  rs201725126:13116:T:G 13116     0.438572
>> >>> m = merge(l4, asign, by.x=c("X1", "X2"), by.y=c("chr", "pos"))
>> >> Error in merge.data.frame(l4, asign, by.x = c("X1", "X2"), by.y =
>c("chr",  :
>> >>    negative length vectors are not allowed
>> >>> sapply(l4,class)
>> >>            X1           X2           X3           X4           X5 
> variant_id
>> >>   "character"  "character"  "character"  "character"  "character" 
>"character"
>> >> pval_nominal  gene_id.LCL
>> >>     "numeric"  "character"
>> >>> sapply(asign,class)
>> >>          gene          chr      chr_pos          pos p.val.Retina
>> >>   "character"  "character"  "character"  "character"  "character"
>> >>
>> >> Please advise as to why I am getting this error when merging?
>> >>
>> >> Thanks
>> >> Ana
>> >
>> > ______________________________________________
>> > 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.
>> >
>>
>
>______________________________________________
>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.

-- 
Sent from my phone. Please excuse my brevity.



More information about the R-help mailing list