【问题标题】:How to extract a vector element without using the index如何在不使用索引的情况下提取向量元素
【发布时间】:2021-09-15 15:34:39
【问题描述】:

我有这个包含不同国家名称的向量:

Contries<-c("United States", "India", "Brazil", "France", "Mali", "Australia")

我想只提取“France”,然后我想提取除France 之外的所有国家/地区名称,而不使用France 的索引,而是使用法国本身的名称。

我尝试了这些,但它们不起作用。

Contries["France"]
Contries[!"France"]

最后,我想提取除FranceMali以外的所有国家/地区的名称

Contries[!c("France","Mali")]

我该怎么做?

【问题讨论】:

    标签: r vector indexing


    【解决方案1】:

    你可以试试

    > Contries[-match(c("France", "Mali"), Contries)]
    [1] "United States" "India"         "Brazil"        "Australia"
    

    【讨论】:

      【解决方案2】:
      
      Contries[!Contries %in% c("France", "Mali")]
      #> [1] "United States" "India"         "Brazil"        "Australia"
      

      reprex package (v2.0.0) 于 2021-07-04 创建

      【讨论】:

        【解决方案3】:
        Contries<-c("United States", "India", "Brazil", "France", "Mali", "Australia")
        

        包括

        Contries[Contries == "France"]
        

        排除单个元素

        Contries[Contries != "France"]
        

        排除多个元素

        Contries[!Contries %in% c("France, Mali")]
        Contries[Contries %in% setdiff(Contries, c("France", "Mali"))]
        

        【讨论】:

          【解决方案4】:

          虽然代码要多一些,但您也可以使用 dplyr 来完成此操作。

          包括

          library(dplyr)
          country <-
            as.data.frame(Contries) %>% 
            dplyr::filter(Contries == "France") %>% 
            unlist() %>% 
            as.character()
          

          排除单个元素

          country <-
            as.data.frame(Contries) %>% 
            dplyr::filter(Contries != "France") %>% 
            unlist() %>% 
            as.character()
          

          排除多个元素

          country <-
             as.data.frame(Contries) %>% 
             dplyr::filter(!Contries %in% c("France", "Mali")) %>% 
             unlist() %>% 
             as.character()
          

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-09-14
            • 2011-10-27
            • 2012-08-15
            • 1970-01-01
            • 2012-02-19
            • 1970-01-01
            相关资源
            最近更新 更多