Azzera filtri
Azzera filtri

outerjoin using Row Names as key?

5 visualizzazioni (ultimi 30 giorni)
Anil
Anil il 6 Gen 2016
Commentato: FM il 31 Gen 2023
The join operation supports table merging using the table row names as key (using the flag 'keys','RowNames'). This functionality doesn't appear to be available when using innerjoin or outerjoin? Is there a workaround for this (I'm currently considering creating a wrapper function that explicitly adds the rownames to a column in both tables, joins using the column, and then readds the rownames, but I feel this may be fairly slow?)

Risposte (1)

Peter Perkins
Peter Perkins il 6 Gen 2016
Row names have to be unique, so I think you're wanting to do something that might be described as more of a merge than a full-blown inner/outer join where there might be many-to-many matches. And if you have a one-to-one correspondence between the two tables, the join function does accept 'RowNames'. But you're correct, the inner/outerjoin functions don't support this directly.
Your idea of adding he row names as an explicit key var will work, I think you could do also use setdiff on the row names and then concatenation. Hope this helps.
  1 Commento
FM
FM il 31 Gen 2023
For the sake of consistency and convenience, I wonder of TMW would add the ability to inner/outer join based on RowNames. It would certainly streamline the coding compared to having to add the variable and later to remove it.

Accedi per commentare.

Categorie

Scopri di più su Tables in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by