MCPcopy Create free account
hub / github.com/dask/dask / test_drop_duplicates

Function test_drop_duplicates

dask/dataframe/dask_expr/tests/test_collection.py:1742–1784  ·  view source on GitHub ↗
(df, pdf, split_out)

Source from the content-addressed store, hash-verified

1740
1741@pytest.mark.parametrize("split_out", [1, True])
1742def test_drop_duplicates(df, pdf, split_out):
1743 with dask.config.set({"dataframe.shuffle.method": "tasks"}):
1744 assert_eq(
1745 df.drop_duplicates(split_out=split_out),
1746 pdf.drop_duplicates(),
1747 )
1748 assert_eq(
1749 df.drop_duplicates(ignore_index=True, split_out=split_out),
1750 pdf.drop_duplicates(ignore_index=True),
1751 check_index=split_out is not True,
1752 )
1753 assert_eq(
1754 df.drop_duplicates(subset=["y"], split_out=split_out),
1755 pdf.drop_duplicates(subset=["y"]),
1756 )
1757 assert_eq(
1758 df.drop_duplicates(subset=["y"], split_out=split_out, keep="last"),
1759 pdf.drop_duplicates(subset=["y"], keep="last"),
1760 )
1761 assert_eq(
1762 df.y.drop_duplicates(split_out=split_out),
1763 pdf.y.drop_duplicates(),
1764 )
1765 assert_eq(
1766 df.y.drop_duplicates(split_out=split_out, keep="last"),
1767 pdf.y.drop_duplicates(keep="last"),
1768 )
1769 actual = df.set_index("y").index.drop_duplicates(split_out=split_out)
1770 if split_out is True:
1771 actual = actual.compute().sort_values() # shuffle is unordered
1772 assert_eq(
1773 actual,
1774 pdf.set_index("y").index.drop_duplicates(),
1775 )
1776
1777 with pytest.raises(KeyError, match="'a'"):
1778 df.drop_duplicates(subset=["a"], split_out=split_out)
1779
1780 with pytest.raises(TypeError, match="got an unexpected keyword argument"):
1781 df.x.drop_duplicates(subset=["a"], split_out=split_out)
1782
1783 with pytest.raises(NotImplementedError, match="with keep=False"):
1784 df.x.drop_duplicates(keep=False)
1785
1786
1787def test_drop_duplicates_split_out(df, pdf):

Callers

nothing calls this directly

Calls 6

assert_eqFunction · 0.90
setMethod · 0.80
set_indexMethod · 0.80
sort_valuesMethod · 0.80
drop_duplicatesMethod · 0.45
computeMethod · 0.45

Tested by

no test coverage detected