R 检查两个表,如果其中一个表的行数较少,则在其中添加行
您好,我正在文件夹中的多个文件上运行以下r脚本R 检查两个表,如果其中一个表的行数较少,则在其中添加行,r,R,您好,我正在文件夹中的多个文件上运行以下r脚本 runForAll <- function(x) { emboss <- read.table(x,header=T) x <- table(emboss[,2],emboss[,3])/NROW(emboss[,3]) y <- as.vector(t(x)) nms <- expand.grid(colnames(x), rownames(x)) names(y) <- paste( nm
runForAll <- function(x) {
emboss <- read.table(x,header=T)
x <- table(emboss[,2],emboss[,3])/NROW(emboss[,3])
y <- as.vector(t(x))
nms <- expand.grid(colnames(x), rownames(x))
names(y) <- paste( nms[,2],nms[,1],sep="")
return(t(y))
}
my.files <- list.files(pattern = "emboss_\\d+\\.ss")
outputs <- lapply(my.files, FUN = runForAll)
缺少行的x:
C E H
A 0.030874786 0.012006861 0.049742710
D 0.044596913 0.005145798 0.015437393
E 0.029159520 0.008576329 0.024013722
F 0.013722127 0.015437393 0.005145798
G 0.051457976 0.003430532 0.008576329
H 0.013722127 0.005145798 0.006861063
I 0.024013722 0.015437393 0.013722127
K 0.056603774 0.003430532 0.039451115
L 0.025728988 0.024013722 0.039451115
M 0.006861063 0.003430532 0.010291595
N 0.029159520 0.001715266 0.008576329
P 0.036020583 0.001715266 0.008576329
Q 0.020583190 0.005145798 0.015437393
R 0.037735849 0.008576329 0.020583190
S 0.030874786 0.005145798 0.027444254
T 0.034305317 0.006861063 0.017152659
V 0.010291595 0.012006861 0.018867925
W 0.006861063 0.000000000 0.010291595
Y 0.005145798 0.008576329 0.006861063
我如何检查:
x的每个实例有20行
如果x的一个特定实例少于20行
添加一行或多行零
即如果一个x只有17行,则添加3行零
非常感谢。这样就可以了:
x = data.frame(A = c(1:10), B = 1, C = 1)
x[head(seq(nrow(x)+1, 21), -1),] = 0
x = data.frame(A = c(1:10), B = 1, C = 1)
x[head(seq(nrow(x)+1, 21), -1),] = 0