繁体   English   中英

提取R中的唯一字符串

[英]Extract unique character strings in R

我有40个CSV文件。 在每个目录中,都有一列名称。 在每个名称列中,可以重复相同的名称(总共,名称列平均有20,000行,其中大约一半是唯一的)。 我想创建一个出现在多个文件中的名称列表(同时被告知出现在哪些文件中)。 如果同一个名称出现在多个文件中,我想知道每个文件的名称。

因此,在小范围内:

  File1
  Name
  John
  Peter
  Abby
  John


  File2
  Mike
  Tim
  John
  Anothername


  File3
  Me
  Mike
  Adam
  Eve

我想要的输出将是这样的:

data.frame
Names         File
John           1
John           2
Mike           2
Mike           3

如果将所有csvs放入列表,您可能会采用以下方法:

#generate a fake data set easy to work with
LIST <- lapply(rpois(10, 10), function(i)data.frame(id=1:i, state=sample(state.name, i)))

#add the file number as a column
v <- lapply(1:length(LIST), function(i)data.frame(LIST[[i]], file=rep(i, nrow( LIST[[i]]))))

#make one big data frame
dat <- do.call(rbind, v)[, -1]

#reorder said data frame
dat[order(dat$state, dat$file), ]

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM