def concat(self, other):
dfs = []<EOL>if isinstance(self, DataFrameConcatenated):<EOL><INDENT>dfs.extend(self.dfs)<EOL><DEDENT>else:<EOL><INDENT>dfs.extend([self])<EOL><DEDENT>if isinstance(other, DataFrameConcatenated):<EOL><INDENT>dfs.extend(other.dfs)<EOL><DEDENT>else:<EOL><INDENT>dfs.extend([other])<EOL><DEDENT>return DataFrameConcatenated(dfs)<EOL>
Concatenates two DataFrames, adding the rows of one the other DataFrame to the current, returned in a new DataFrame.

        No copy of the data is made.

        :param other: The other DataFrame that is concatenated with this DataFrame
        :return: New DataFrame with the rows concatenated
        :rtype: DataFrameConcatenated