我想知道如何在R中的参数中包含满足某些命名要求的每个对象。让我们说这些对象都被称为这样的东西
var01 var02 var03 var04 varnn
例如,我在Stata中所做的只是这个
tab1 var*
它会将每个变量与前3个字母" var"制成表格。
在这篇文章的早期版本中,我对我在R项目中想要做的事情非常模糊。所以这里。我有一个for循环,迭代超过650个实例,目标是为每个实例附加6个数据集。但是,对于一些人(我不知道哪个),并不是所有6个数据集都存在,这就是为什么这样写的rbind命令失败了:
rbind(data01, data02, data03, data04, data05, data06)
因此,我喜欢运行类似的东西
rbind(data*)
以便考虑丢失的数据集。 对于这种混乱感到抱歉,当我最初写这个问题时,我还不够清楚。
仅供参考,这是整个循环:
for(i in 1:650){
try(part1 <- read.csv(file = paste0("Twitter Scrapes/searchTwitter/09July/",MP.ID[i],".csv")))
try(part2 <- read.csv(file = paste0("Twitter Scrapes/userTimeline/08July/",MP.ID[i],".csv")))
try(part3 <- read.csv(file = paste0("Twitter Scrapes/userTimeline/16July/",MP.ID[i],".csv")))
try(part4 <- read.csv(file = paste0("Twitter Scrapes/searchTwitter/17July/",MP.ID[i],".csv")))
try(part5 <- read.csv(file = paste0("Twitter Scrapes/userTimeline/24July/",MP.ID[i],".csv")))
try(part6 <- read.csv(file = paste0("Twitter Scrapes/searchTwitter/24July/",MP.ID[i],".csv")))
allParts <- ls(pattern = "^part*")
allNames <- paste(allParts, collapse = ", ") # this is just what I tried just now, didn't work though
combined.df <- rbind(ALL THE DATASETS WITH PART))
}
答案 0 :(得分:3)
数据强>
var01 <- sample(2, 10, TRUE)
var02 <- sample(2, 10, TRUE)
var03 <- sample(2, 10, TRUE)
vvv01 <- sample(2, 10, TRUE) # variable which should not be tabulated
<强>代码强>
allV <- ls(pattern = "^var.*") # vector of all variables starting with 'var'
lapply(allV, function(.) table(get(.)))
<强>解释强>
使用ls
,您将获得根据您提供的模式命名的所有变量。然后,循环遍历所有这些变量,按名称检索变量并将其制表。
<强>更新强>
根据您最近的更改,我将采取以下措施:
allV <- lapply(ls(pattern = "^part.*"), get) #stores all part variables in a list
combined.df <- do.call(rbind, allV) # rbinds all of them