R语言----按照列的信息对行分组

Python013

R语言----按照列的信息对行分组,第1张

R语言使用技巧

当你要对按照数据框某一列的信息对文件进行分组时

1. 可以使用split函数

2. 可以使用group_by() 函数,但是这个函数不能方便你接下来对每个小的group进行更为复杂的操作。

3. group_split() 函数

4. group_nest() 函数以及nest()函数

具体参数可参考:

https://www.jianshu.com/p/2efbf6632dc6

group_list()可以把大的数据框按照某一列切分为小的数据框,这些小的数据框再组成一个list

参考: https://mp.weixin.qq.com/s/XGb3P6SY2UlZMgun_etFmg

nest()函数可以创建嵌套数据框,将多列多行组成一个列表,而这个列表单独成为一列,称为列表列。

nest() 函数有两种使用方式。当用于分组数据框时,nest() 函数会保留用于分组的列,而将其他所有数据归并到列表列中。

还可以在未分组数据框上使用nest(),此时需要指定嵌套哪些列。

使用这些函数时,要清楚输入输出的格式是什么,怎么样取值才能得到想要的格式,是使用appply还是lapply,以及map要根据实际情况来定。

>>> data1 <- data7_0 %>% 

             group_by(CELLPHONE,MEMBERID) %>%             filter(row_number() == 1) %>%             ungroup()1234

方法二:

>>> data2 <- data7_0 %>% 

             distinct(CELLPHONE,MEMBERID, .keep_all = TRUE)12

方法三:

>>> data3 <- sqldf("select DISTINCT CELLPHONE,MEMBERID from data7_0")1

方法四:

>>> data4 <- base::unique(data7_0)1

方法五:

>>> data5 <- as.data.table(data7_0[!duplicated(data7_0$CELLPHONE), ])