我在一个目录中有大量的数据文件(>1000)。我想将它们全部合并到R中的单个数据框中。它们都具有相同的列数量和类型。到目前为止,我所拥有的是:
setwd("directory")
files <- list.files()
for (i in 1:length(files)) assign(files[i], read.csv(files[i]))
这将为每个1000+文件创建数据框。有没有什么方法可以合并它们,而不必键入所有1000+文件名的列表?
任何帮助都将不胜感激!
我在R中有2个数据帧,其中一个是另一个的子集。我必须在其中做一些操作,并计算6个x值(代码中的DayTreat)的主数据框中子集数据的百分比。因此,我创建了一个函数来执行计算并创建一个新列。我的问题是它太慢了。有什么建议吗?
percDay <- function(fullDat, subDat)
{
subDat$DaySum <- NULL
for (i in fullDat$DayTreat) # for each DayTreat value in fullDat. Must be `psmelt()` made phyloseq object
{
r
我有一个关于R和dplyr命令的问题。我得到了以下数据帧df:
ID bank type
1 own online
2 own offline
3 NaN total
现在,我想结合类型“NaN”来过滤TOTAL值。我知道我可以很容易地只过滤银行列,但是我对组合两列感兴趣,其中一列是NaN。我的命令不起作用
vec <- c("total)
l1 <- df %>% filter_at(vars(type,bank), any_vars(!(. %in% vec) && (!is.na(.))
我有一张表,看上去如下--一些企业,一些可能从事的实践(P1 - P4),以及一个名为' peer‘的专栏,它是一个分组列(是的-对等的,没有对等的)。所有实习栏均为“是”/“否”:
Business P1 P2 P3 P4 Peer
a y n y n y
b n n y n n
c n y y n y
d y y y y n
e n n n y y
f n n n y n
g y y n n y
h n y n n
我是R中包的新用户,我试图给"group“命令创建的新列命名
> DT = data.table(x=rep(c("a","b"),c(2,3)),y=1:5)
> DT
x y
1: a 1
2: a 2
3: b 3
4: b 4
5: b 5
> DT[,{z=sum(y);z+3},by=x]
x V1
1: a 6
2: b 15
我想直接命名V1 (默认)列(不必使用冒号),可以吗?
此外,是否可以在一个命令中通过操作执行几个组,这将导致如下结果:
X V1 V2 1: A 6 2: B 15
谢谢
我有一个包含大约100个csv文件的文件夹,我想把它们读入R中的一个数据文件中,我有点知道如何做到这一点,但是我必须跳过每个csv文件中的前两列,这就是我被困在其中的部分。到目前为止我的代码是:
myfiles <- list.files(pattern = ".csv") # create a list of all csv files in the directory
data_csv <- ldply(myfiles, read.csv)
谢谢你的帮助