def stack(self, key, labels=None):
rows, labels = [], labels or self.labels<EOL>for row in self.rows:<EOL><INDENT>[rows.append((getattr(row, key), k, v)) for k, v in row.asdict().items()<EOL>if k != key and k in labels]<EOL><DEDENT>return type(self)([key, '<STR_LIT>', '<STR_LIT:value>']).with_rows(rows)<EOL>
Takes k original columns and returns two columns, with col. 1 of
        all column names and col. 2 of all associated data.