You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
$ python
Python 3.12.1 (main, Feb 27 2024, 08:10:07) [Clang 15.0.0 (clang-1500.0.40.1)] on darwin
Type "help", "copyright", "credits" or "license"for more information.
>>> import ibis
>>> df = ibis.read_parquet("bug.parquet")
>>> df.describe()
Traceback (most recent call last):
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/expr/operations/relations.py", line 339, in __init__
missing_from_left = right.schema - left.schema
~~~~~~~~~~~~~^~~~~~~~~~~~~
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/common/collections.py", line 247, in __sub__
common_keys = self._check_conflict(other)
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/common/collections.py", line 212, in _check_conflict
raise ConflictingValuesError(conflicts)
ibis.common.exceptions.ConflictingValuesError: Conflicting values for keys:
`mean`: decimal(38, 2) != decimal(20, 2)
`std`: decimal(38, 2) != decimal(20, 2)
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "<stdin>", line 1, in<module>
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/expr/types/relations.py", line 2968, in describe
t = ibis.union(*aggs)
^^^^^^^^^^^^^^^^^
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/expr/api.py", line 1951, in union
return table.union(*rest, distinct=distinct) if rest else table
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/expr/types/relations.py", line 1674, in union
return self._assemble_set_op(ops.Union, table, *rest, distinct=distinct)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/expr/types/relations.py", line 1599, in _assemble_set_op
node = opcls(left, right, distinct=distinct)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/common/bases.py", line 72, in __call__
return cls.__create__(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/common/grounds.py", line 120, in __create__
returnsuper().__create__(**kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File ".direnv/python-3.12/lib/python3.12/site-packages/ibis/expr/operations/relations.py", line 342, in __init__
raise RelationError(err_msg + "\n" + str(e)) from e
ibis.common.exceptions.RelationError: Table schemas must be equal forset operations.
Conflicting values for keys:
`mean`: decimal(38, 2) != decimal(20, 2)
`std`: decimal(38, 2) != decimal(20, 2)
Code of Conduct
I agree to follow this project's Code of Conduct
The text was updated successfully, but these errors were encountered:
What happened?
df.describe crashes when two columns have different decimal types. Here's the file you can reproduce this with: bug.parquet
What version of ibis are you using?
9.5.0
What backend(s) are you using, if any?
DuckDB
Relevant log output
Code of Conduct
The text was updated successfully, but these errors were encountered: