#' Merge two or more data frame in a list.
#'
#' @param datalist A list including more than two data frame .
#' @param bylist A merged ID list.
#' @return The merged dataframe accordidng to \code{datalist} and \code{bylist}.
#' @examples
#' data1 <- data.frame(v1=c("a","b","c"),v2 = c("m","g","f"))
#' data2 <- data.frame(v1=c("a","b","c"),v3 = c("d","g","f"))
#' data3 <- data.frame(v3=c("d","g","f"),v4 = c("m",NA,NA))
#' datalist <- list(d1=data1,d2=data2,d3=data3)
#' bylist <- list(id1=c("v1"),id2=c("v3"))
#' data1
#' data2
#' data3
#' merged_data <- merge_multi_files(datalist,bylist)
#' merged_data
#'
merge_multi_files <- function(
datalist,
bylist
)
{
if(length(datalist)<=1)
{
stop("There must be at least two data to be merge.\nPlease use help(merge_multi_files) to see example")
}
if (length(datalist) != length(bylist)+1)
{
stop("datalist length must equals bylist add 1.\nPlease use help(merge_multi_files) to see example")
}
data_len <- length(datalist)
tmp_data <- merge(datalist[[1]],datalist[[2]],by=bylist[[1]]);
for (i in 3: data_len)
{
tmp_data <- merge(tmp_data,datalist[[i]],by=bylist[[i-1]])
}
return(tmp_data)
}
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.