def test_can_select_columns(): df = tibble(x=1, y=2) out = df >> rename_with(str.upper) >> names() assert_iterable_equal(out, ["X", "Y"]) out = df >> rename_with(str.upper, 0) >> names() assert_iterable_equal(out, ["X", "y"]) out = df >> rename_with(str.upper, f.x) >> names() assert_iterable_equal(out, ["X", "y"])
def test_0_vars(df): gdata = group_data(group_by(iris)) assert names(gdata) == ["_rows"] out = gdata assert_iterable_equal(out._rows[0], range(nrow(iris))) gdata = group_data(group_by(iris, **{})) assert names(gdata) == ["_rows"] out = gdata assert_iterable_equal(out._rows[0], range(nrow(iris)))
def test_can_be_before_group_by(): df = tibble(id=c(1, 1, 2, 2, 2, 3, 3, 4, 4, 5), year=c(2013, 2013, 2012, 2013, 2013, 2013, 2012, 2012, 2013, 2013), var1=rnorm(10)) dfagg = df >> group_by(f.id, f.year) >> select( f.id, f.year, f.var1) >> summarise(var1=mean(f.var1)) assert_iterable_equal(names(dfagg), ["id", "year", "var1"])
def test_passes_args_kwargs_along(): df = tibble(x=1, y=2) out = df >> rename_with(str.replace, f.x, "x", "X") >> names() assert_iterable_equal(out, ["X", "y"])
def test_can_rename_with_duplicate_columns(): df = tibble(tibble(x=1), x=2, y=1, _name_repair="minimal") out = df >> rename(x2=1) >> names() assert_iterable_equal(out, ["x", "x2", "y"])
def test_slice_handles_empty_df(): df = tibble(x=[]) res = df >> slice(f[:3]) assert nrow(res) == 0 assert names(res) == ["x"]