【问题标题】:R - getting back single element from strsplitR - 从 strsplit 取回单个元素
【发布时间】:2014-11-18 22:34:59
【问题描述】:

我有一个用“_”分隔的字符向量。我想遍历每个字符串拆分它,然后使用各个值来获取 csv 文件的特定行/列来进行一些计算。如何获取单个元素?

tst <- c("Test1_Test2","Test3_Test4")

splt <- strsplit(tst,"_")
splt

[[1]]
[1] "Test1" "Test2"

[[2]]
[1] "Test3" "Test4"

如何将单个值放入变量中?即

str1 <- "Test1"
str2 <- "Test2"
str3 <- "Test3"
str4 <- "Test4"

编辑:我总是在发布问题后立即解决问题,哈哈。

splt[[1]][1]
[1] "Test1"

【问题讨论】:

    标签: r strsplit


    【解决方案1】:

    所以基本上strsplit 将应用于tst 对象的每个元素。它会是这样的:

    > strsplit(tst, "_")
    [[1]]
    [1] "Test1" "Test2"
    
    [[2]]
    [1] "Test3" "Test4"
    

    然后您可以使用 unlist 将其分解为单个向量

    > unlist(strsplit(tst, "_"))
    [1] "Test1" "Test2" "Test3" "Test4"
    

    然后你可以根据你想要达到的目标循环遍历每个单词:

    for (elem in unlist(strsplit(tst, "_"))){
      print(elem)
    }
    
    > [1] "Test1"
    > [1] "Test2"
    > [1] "Test3"
    > [1] "Test4"
    

    【讨论】:

    • 谢谢!这可能是比我做得更好的方法。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-28
    • 2017-11-24
    • 1970-01-01
    • 2017-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多