def prepare_data(self, rows):
self._rows = dict()<EOL>for row in copy.copy(rows) if self.copy else rows:<EOL><INDENT>pseudo_key = self._get_pseudo_key(row)<EOL>if pseudo_key not in self._rows:<EOL><INDENT>self._rows[pseudo_key] = list()<EOL><DEDENT>self._rows[pseudo_key].append(row)<EOL><DEDENT>self._date_type = None<EOL>for pseudo_key, rows in self._rows.items():<EOL><INDENT>self._rows_date2int(rows)<EOL><DEDENT>
Sets and prepares the rows. The rows are stored in groups in a dictionary. A group is a list of rows with the
same pseudo key. The key in the dictionary is a tuple with the values of the pseudo key.

:param list[dict] rows: The rows