What would cause inner_join_impl to thins a 'character' is a 'list'

50 views
Skip to first unread message

Steve Lianoglou

unread,
Aug 15, 2017, 2:14:28 PM8/15/17
to manipulatr
Comrades,

I seem to have cornered myself into a situation where I'm finding it
very difficult to put together a reproducible example.

I'm trying to inner_join two tables but inner_join_impl thinks
something (the join column(?)) is a 'list' instead of a "CHARSXP"

The issue is that there are no list columns in any of the two tables
I'm trying to inner_join.

Here is the code that is throwing an error:

R> xx = tx.info %>% inner_join(tchrom.info,
by=c("feature_id"="ensembl_transcript_id"))

And the error:

Error in inner_join_impl(x, y, by$x, by$y, suffix$x, suffix$y,
check_na_matches(na_matches)) :
Value of SET_STRING_ELT() must be a 'CHARSXP' not a 'list'

And some context for the two objects I'm trying to join

R> head(tx.info)
# A tibble: 6 x 3
feature_type feature_id name
<chr> <chr> <chr>
1 enstid ENSMUST00000070533 Xkr4_1
2 enstid ENSMUST00000208660 Rp1_1
3 enstid ENSMUST00000194992 Rp1_2
4 enstid ENSMUST00000027032 Rp1_3
5 enstid ENSMUST00000027035 Sox17_1
6 enstid ENSMUST00000195555 Sox17_2

R> head(tchrom.info)
head(tchrom.info)
# A tibble: 6 x 5
ensembl_transcript_id chromosome_name start_position end_position strand
<chr> <chr> <int> <int> <int>
1 ENSMUST00000000001 3 108107280 108146146 -1
2 ENSMUST00000000003 X 77837901 77853623 -1
3 ENSMUST00000000010 11 96271457 96276595 1
4 ENSMUST00000000028 16 18780447 18811987 -1
5 ENSMUST00000000033 7 142650766 142666816 -1
6 ENSMUST00000000049 11 108343354 108414396 1

And sapply(tx.info, is.list) and sapply(tchrom.info, is.list) confirms
that there are no list columns in sight ...

I'm running:

R version 3.4.0 (2017-04-21)
Platform: x86_64-pc-linux-gnu (64-bit)
Running under: Red Hat Enterprise Linux Server release 6.6 (Santiago)

And tidyverse::tidyverse_update() confirms that "All tidyverse
packages up-to-date"

Has anybody seen this before?

Thanks,
-steve

--
Steve Lianoglou
Computational Biologist
Cancer Immunology
Genentech

Brandon Hurr

unread,
Aug 15, 2017, 5:34:25 PM8/15/17
to Steve Lianoglou, manipulatr
I've never seen it, but that doesn't really mean much because I've probably not tried doing what you're doing. 

Can you provide a fully reproducible example? 

Thanks, 
Brandon

--
You received this message because you are subscribed to the Google Groups "manipulatr" group.
To unsubscribe from this group and stop receiving emails from it, send an email to manipulatr+unsubscribe@googlegroups.com.
To post to this group, send email to manip...@googlegroups.com.
Visit this group at https://groups.google.com/group/manipulatr.
For more options, visit https://groups.google.com/d/optout.

Steve Lianoglou

unread,
Aug 15, 2017, 5:52:26 PM8/15/17
to Brandon Hurr, manipulatr
Hi Brandon,

I couldn't reproduce this until just now.

I will have to upload some data somewhere because it's not reproducing
with smaller examples I'm trying to make ... it *seems* to have
something to do with using group_by in a chain of dplyr manipulations.

I'll update here and an issue on github shortly.

-steve
>> email to manipulatr+...@googlegroups.com.
>> To post to this group, send email to manip...@googlegroups.com.
>> Visit this group at https://groups.google.com/group/manipulatr.
>> For more options, visit https://groups.google.com/d/optout.
>
>



Steve Lianoglou

unread,
Aug 15, 2017, 5:58:04 PM8/15/17
to Brandon Hurr, manipulatr
... and actually, now that I'm going to go file a ticket, I see
someone else having the same "ghost of a problem" that looks to be
from the same issue as mine:

https://github.com/tidyverse/dplyr/issues/3012

Will add to that issue with my details

-steve

Steve Lianoglou

unread,
Aug 15, 2017, 6:14:05 PM8/15/17
to Brandon Hurr, manipulatr
Ok, that was fun ... this was a tricky one!

I'd be curious to learn if others can reproduce the issue on their
setup. As I mentioned in the ticket, I can reproduce this really
strange behavior on two different machines (one linux, and one macOS
sierr).

On Tue, Aug 15, 2017 at 2:58 PM, Steve Lianoglou

Steve Lianoglou

unread,
Aug 16, 2017, 1:56:52 PM8/16/17
to Brandon Hurr, manipulatr
For posterity:

Brandon was kind enough to run the example here:

https://github.com/tidyverse/dplyr/issues/3012#issuecomment-322604035

and pointed out that it worked on his system, which was using dplyr
installed from the current master branch.

Upon my devtools::install_github("tidyverse/dplyr")-ing the package
and rerunning the code, this seems to have been fixed.

Thanks Brandon!

-steve

On Tue, Aug 15, 2017 at 3:14 PM, Steve Lianoglou
Reply all
Reply to author
Forward
0 new messages