R语言第二章数据处理①选择列

作者: 柳叶刀与小鼠标 | 来源:发表于2018-12-05 02:41 被阅读174次

    主要介绍几个基于 tidyverse 的函数:

    • select():将一列或多列提取为数据表。 它还可用于从数据框中删除列。
    • select_if():根据特定条件选择列。 例如可以使用此函数选择列,如果它是数字。
    • 辅助函数 - starts_with(),ends_with(),contains(),matches(),one_of():根据名称选择列/变量
    • 根据列的位置选择列或者根据列的名字选择列
    #选择第一列到第三列
    my_data %>% select(1:3)
    #选择第一列和第三列
    my_data %>% select(1, 3)
    
    my_data %>% select(Sepal.Length, Petal.Length)
    my_data %>% select(Sepal.Length:Petal.Length)
    
    
    
    
    • 还有其他函数同样可以用于选择列,包括根据首字母,尾字母,包含某字符,或者根据该列的属性选择列
    # Select column whose name starts with "Petal"
    my_data %>% select(starts_with("Petal"))
    
    # Select column whose name ends with "Width"
    my_data %>% select(ends_with("Width"))
    
    # Select columns whose names contains "etal"
    my_data %>% select(contains("etal"))
      
    # Select columns whose name maches a regular expression
    my_data %>% select(matches(".t."))
    
    # selects variables provided in a character vector.
    my_data %>% select(one_of(c("Sepal.Length", "Petal.Length")))
    
    • 根据条件选择列
    #选择列属性为数字的列
    my_data %>% select_if(is.numeric)
    
    • 删除列(根据列的属性)
    #Removing Sepal.Length and Petal.Length columns:
    my_data %>% select(-Sepal.Length, -Petal.Length)
    #Removing all columns from Sepal.Length to Petal.Length:
    my_data %>% select(-(Sepal.Length:Petal.Length))
    #Removing all columns whose name starts with “Petal”:
    my_data %>% select(-starts_with("Petal"))
    
    • 根据列的位置删除列
    # Drop column 1
    my_data %>% select(-1)
    # Drop columns 1 to 3
    my_data %>% select(-(1:3))
    # Drop columns 1 and 3 but not 2
    my_data %>% select(-1, -3)
    

    相关文章

      网友评论

      本文标题:R语言第二章数据处理①选择列

      本文链接:https://www.haomeiwen.com/subject/dwibcqtx.html