right, I’m past that and did what you describe. BTW that requires that drm.nrow
be mutable. That is defined as immutable in the DSL and so will require a
change to several traits. I’ve done this but am still trying to decide the
cleanest.
The current issue is that the cooc takes a primary matrix (drmA) and list of
secondary ones (drmBs). It was doing
drmB.t %*% drmA
but it should be
drmA.t %*% drmB
This seems obvious but wasn’t caught until I created a drmB with completely
different column ID space. I’ve also fixed this but need to rewrite a bunch of
tests. This is just FYI in case I missed something.
On Jul 14, 2014, at 9:28 AM, Ted Dunning <[email protected]> wrote:
On Tue, Jul 8, 2014 at 10:29 AM, Pat Ferrel <[email protected]> wrote:
To do this correctly for all cases the row IDs for all unique row keys would
have to be created across all drms for cooccurrence. This implies using a
single Map for the row space of all drms read in with a single incrementing
integer for the DRM row key. The length of this Map would be the row dimension
for all DRMs. After the row dimension is calculated the Map could be thrown
away since only columns (input items) need to have application specific IDs
applied at output.
The row id's have to be identical for both matrices in any case. You really do
need to convert to an identical set of id's and have the same size.
(Stated more simply ... this exception is actually correct. This won't work
unless the matrices have the same rows)