首页 > 解决方案 > 如何在strsplit之后访问元素列表的第一个元素?

问题描述

运行后我有一个保存为列表的文件列表 files <- list.files(pattern=".txt")

所以当我跑步时,files我有以下内容:

AA1131.report.txt
BB1132.reprot.txt
CC0900.report.txt
.
.
.

.report.txt我想在 RI中的 so 尝试之前获取文件名的第一部分:

>files <- list.files(pattern=".txt")
>files <- strsplit(files, "\\.")
>files[[1]][1]
[1] "AA1131"

我期待:

[1] "AA1131"
[1] "BB1132"
[1] "CC0900"

或者以某种方式获取它们并将它们保存为列表,以便我可以将它们用作第一列的 tibble 中的 ID 行名称。

标签: rstrsplit

解决方案


我们需要遍历list(from strsplit) 并提取第一个元素

sapply(files, `[[`, 1)

files[[1]]仅提取第一个list元素


此外,这可以在没有strsplit

trimws(files, whitespace = "\\..*")

或与sub

sub("\\..*", "", files)

推荐阅读