使用R将数据帧分成较小的数据帧

时间:2018-07-04 14:06:44

标签: r dataframe split

我有大量的数据,基本上如下

name  age  class       sex    hair_color
John  23   senior      M      brown
Emily 20   sophomore   F      black

我想做的是分别看大四,大二和其他班级(大三和大一)。如何获取数据框并将其拆分为四个较小的数据框?

我以为我可以按以下方式调整数据框,但语法有问题

sen<-df[,] where df[,3]=="senior"

这就是我要达到的目标。

原来,我快到了。以下是正确的:

sen<-df[(df$class=='senior'),]

您也可以使用子集来实现:

subset(df,df$class=='senior',select=c(name,age,sex,hair_color)

1 个答案:

答案 0 :(得分:2)

正确的R语法为:

选项1:

Sen_df <- df[df$class %in% "senior", ] 

选项2:

library(dplyr)
Sen_df <- filter(df, class == "senior")