新手来了!我写了以下未完成的代码:
library(dplyr)
filenames <- list.files(path = "~/Desktop/ChIP-Seq", pattern ="*.bed", full.names = T)
mylst <- lapply(filenames, read.table, header = F, sep = "\t")
for (i in filenames)
x <- nrow(mylst[[i]])
##dont know what to do here
y <- paste("MACS_peaks", seq(from= 1, to= , by= 1), sep = "")
gd1 <- mutate(gendata, MACS_peaks = y)我想访问我的目录中的每个文件,对每个文件运行一个nrow命令,然后使用每个文件的nrow编号来使用dplyr mutate,并为每个文件添加那么多的MACS_peaks。
我如何做到这一点呢?
发布于 2017-03-11 23:44:45
从OP的代码看,我们似乎需要创建一个包含行号的序列列(dplyr中的row_number()是一个方便的函数)
lapply(mylst, function(x) x %>%
mutate(MACS_peaks = row_number()))或使用tidyverse
library(tidyverse)
mylst %>%
map(~mutate(., MACS_peaks = row_number()))https://stackoverflow.com/questions/42737117
复制相似问题