1、兩列合並為1列
dat <- read.table("outcome.ped") dat <- dat[,-(1:6)] dat result <- data.frame(v1 = 1:(2 * nrow(dat))) ## 先生成合並后的框架,兩列合並為1列,因此行數翻倍 for (i in 1:(ncol(dat)/2)) { ##按照列數的一半進行循環 temp1 <- c(dat[,i * 2 - 1], dat[, i * 2]) ##合並 result <- cbind(result, temp1) ##添加到數據框 } result
2、4列合並為1列(同上)
dat <- read.table("outcome.ped") dat <- dat[,-(1:6)] dat result <- data.frame(v1 = 1:(4 * nrow(dat))) for (i in 1:(ncol(dat)/4)) { temp1 <- c(dat[,4 * i - 3], dat[, 4 * i - 2], dat[, 4 * i - 1], dat[, 4 * i]) result <- cbind(result, temp1) } result