I used the following function:
splitfile<-split(training,list(training$group1,training$city))
and this returns me a list of dataframes with different rows, based on the variables I selected.
However, a dataframe with 0 rows is returned because there is no match for a category of a variable with the category of another variable.
My goal is to delete this dataframe that contains 0 rows from the list.
But I need to do this by condition , so there may be cases that return me multiple dataframes with 0 lines, and it would not be efficient to delete one by one.
dput
to aid in response:
training=structure(list(bin = c(0, 0, 0, 0, 1, 1, 0, 0, 1, 1), modalidade = structure(c(1L,
3L, 1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L), .Label = c("unik", "opfin",
"compras"), class = "factor"), group1 = c(1, 2, 2, 1, 2, 1, 2,
1, 2, 1), missing = c(NA, 4, 5, NA, 7, 6, NA, NA, 4, 5), score1 = c(3,
2, 4, 4, 7, 6, 4, 3, 6, 7), valor = c(100, 200, 321, 34, 3424,
2344, 4232, 43, 22, 22), gender = c("M", "M", "M", "M", "M",
"F", "F", "F", "F", "F"), via = structure(c(2L, 1L, 2L, 1L, 2L,
1L, 2L, 1L, 2L, 1L), .Label = c("1via", "2via"), class = "factor"),
income = c(1605.52545357496, 1957.10460608825, 3463.77286640927,
2241.49697413668, 2575.95523679629, 3004.28174249828, 3458.30937661231,
1786.68619645759, 2065.093211364, 1561.55416276306), city = c("San Francisco",
"Santa Monica", "Santa Monica", "Santa Monica", "Santa Monica",
"Hollywood", "Hollywood", "Hollywood", "Hollywood", "Hollywood"
), CPF = c(38676865809, 43245353454, 34565456765, 38676865809,
38676865809, 44322211189, 44322211189, 12345678900, 12345678900,
33444455590), desbloq = structure(c(10553, 9537, 10553, 10553,
9212, 10658, 10957, 11822, 11822, 10188), class = "Date"),
trans = structure(c(10556, 9541, 10555, 10554, 9218, 10660,
10958, 11823, 11826, 10190), class = "Date")), row.names = c(NA,
-10L), .Names = c("bin", "modalidade", "group1", "missing", "score1",
"valor", "gender", "via", "income", "city", "CPF", "desbloq",
"trans"), class = "data.frame")
If the answer includes some package that does it in an elegant way, even better.