Ejemplo n.º 1
0
def test_arrange_column_spec_inverse2():
    actual = dp(mtcars).select(["hp", "qsec"]).arrange(["hp", "qsec"]).pd
    should = mtcars.sort_values(["hp", "qsec"],
                                ascending=[False, False])[["hp", "qsec"]]
    assert_frame_equal(should, actual)

    actual = dp(mtcars).select(["hp", "qsec"]).arrange(["-hp", "qsec"]).pd
    should = mtcars.sort_values(["hp", "qsec"],
                                ascending=[True, False])[["hp", "qsec"]]
    assert_frame_equal(should, actual)

    actual = dp(mtcars).select(["hp", "qsec"]).arrange(["hp", "-qsec"]).pd
    should = mtcars.sort_values(["hp", "qsec"],
                                ascending=[False, True])[["hp", "qsec"]]
    assert_frame_equal(should, actual)
Ejemplo n.º 2
0
def test_summary_quantiles():
    args = [("disp", lambda x, q=q: x.quantile(q), "q%.2f" % q)
            for q in np.arange(0, 1.1, 0.1)]
    actual = dp(mtcars).sort_values("cyl").groupby("cyl").summarise(*args).pd
    lambdas = [lambda x, q=q: x.quantile(q) for q in np.arange(0, 1.1, 0.1)]
    for l, q in zip(lambdas, np.arange(0, 1.1, 0.1)):
        l.__name__ = "q%.2f" % q
    should = (mtcars.sort_values("cyl").groupby("cyl")["disp"].aggregate(
        lambdas).reset_index())
    assert_frame_equal(should, actual)
Ejemplo n.º 3
0
def test_mixing_context_manager_and_dp():
    with dppd(mtcars) as (dpY, Y):
        dpY.sort_values("hp")
        dp(diamonds).filter_by(X.cut == "ideal")
        dpY.filter_by(Y.cyl.isin([4, 6]))
        actual_diamonds = dp().sort_values("price").head().pd
        actual_mtcars_full = dpY.pd
        dpY.head()
    actual_mtcars = dpY.pd
    should_diamonds = diamonds[diamonds.cut == "ideal"].sort_values(
        "price").head()
    should_mtcars = mtcars.sort_values("hp")
    should_mtcars_full = should_mtcars[should_mtcars["cyl"].isin([4, 6])]
    should_mtcars = should_mtcars_full.head()
    assert_frame_equal(should_diamonds, actual_diamonds)
    assert_frame_equal(should_mtcars, actual_mtcars)
    assert_frame_equal(should_mtcars_full, actual_mtcars_full)
Ejemplo n.º 4
0
def test_arrange_column_spec_inverse():
    actual = dp(mtcars).select("hp").arrange("-hp").pd
    should = mtcars.sort_values("hp", ascending=True)[["hp"]]
    assert_frame_equal(should, actual)
Ejemplo n.º 5
0
def test_sorting_within_groups():
    actual = dp(mtcars).groupby(X.cyl).arrange("qsec").ungroup().pd
    should = mtcars.sort_values(["cyl", "qsec"])
    should = should[actual.columns]
    assert_frame_equal(should, actual)