[Bioc-devel] cbind for DataFrame no longer behaving as expected

Aaron Lun alun at wehi.edu.au
Fri Sep 8 15:25:06 CEST 2017


Dear list,

It seems that an alteration to the cbind method for DataFrame objects in S4Vectors (probably d595a19b19df9b9c9aaef71e9c1cd1bdc681bfb1) has led to some strange behaviour. In particular, if I run this code with S4Vectors 0.15.7, I get the following output:

require(S4Vectors)
cbind(DataFrame(score=1, xxx=1), DataFrame(row.names=1)) # okay

## DataFrame with 1 row and 2 columns
##      score       xxx
##  <numeric> <numeric>
## 1         1         1

cbind(DataFrame(score=1), DataFrame(row.names=1)) # strange

## DataFrame with 1 row and 1 column
##        dfs
##  <numeric>
## 1         1

The first cbind() call works as expected, but the named "score" field disappears in the output object of the second cbind() call, which is rather surprising. This is the source of at least a few failed tests in the InteractionSet package.

Cheers,

Aaron


More information about the Bioc-devel mailing list