r - 根据复杂模式列出文件

标签 r

我有一个要导入 R 的文件列表。它们看起来像这样:

 > dput(asia)
   "chin074.csv", "indi001.csv", "indi001e.csv", "indi001l.csv", 
   "indi001n.csv", "indi001x.csv", "indi002.csv", "indi002e.csv", ... 

我只想导入那些主名称后没有字母的文件。因此,我想导入 chin074.csvindi001.csv,但不导入 indi001e.csvindi001l.csv ,主标题后有字母 el

我知道我可以使用 grep 的一些变体来做到这一点,但我不知道如何做。所以像这样:

asia<-grep(list.files(path="./asia/"), pattern='?', inv=T, value=T) 
asia_new<- lapply(asia, read.csv)

我该怎么做?

最佳答案

您可以使用以下模式:

asia <- grep('[a-z]+\\d+\\.csv', asia, value = TRUE)
#[1] "chin074.csv" "indi001.csv" "indi002.csv"

我们选择包含一个或多个小写字母 (a-z)、后跟一个或多个数字、后跟 .csv 的文件。

数据

asia <- c("chin074.csv", "indi001.csv", "indi001e.csv", "indi001l.csv", 
          "indi001n.csv", "indi001x.csv", "indi002.csv", "indi002e.csv")

关于r - 根据复杂模式列出文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61427259/

相关文章:

r - 包的安装具有非零退出状态 - Linux 服务器

r - 根据组为直方图着色时防止错误的密度图

r - 如何使用 r 传播数据

r - 向ggplot map 添加比例尺

r - SparkR(Spark 2.1.0 或 2.2.0)中有 MaxAbsScaler 吗?

html - 使用浏览器打开 .html(= .Rmd 输出)时,Leaflet Layer Tiles 不可切换

r - data.table-按除一列以外的所有元素分组

r - 查找唯一行

r - 组合 data.table 中的条件集以使用二进制搜索提取值

r - 是否可以使用mosaic::dotPlot给点着色?