R/02-list.R

Defines functions list2d_dataframe list_init listAsDF_rows listAsDF listAsDF_cols

Documented in list2d_dataframe listAsDF listAsDF_cols listAsDF_rows list_init

#' 将列表转化为数据框
#'
#' @param data 列表数据
#'
#' @return 返回值
#' @export
#'
#' @examples
#' listAsDF_cols();
listAsDF_cols <- function(data) {
  res <- as.data.frame(data,stringsAsFactors=FALSE);
  return(res);
  
}
#' 将列表转化为数据框
#'
#' @param data 列表数据
#'
#' @return 返回值
#' @export
#'
#' @examples
#' listAsDF();
listAsDF <- function(data) {
  res <- as.data.frame(data,stringsAsFactors=FALSE);
  return(res);
  
}

#' 将列表数据按行合并为DF
#'
#' @param data list数据
#'
#' @return 返回值
#' @export
#'
#' @examples
#' listAsDF_rows();
listAsDF_rows <- function(data) {
  res <- do.call('rbind',data);
  return(res);
  
}



#' 处理初始化list操作
#'
#' @param len 元素个数
#' @param listNames 元素名称
#'
#' @return 返回值
#' @export
#'
#' @examples
#' library(tsdo);
#' aa <-list_init(3);
#' aa;
#' bb<-list_init(listNames = LETTERS);
#' bb;
#' 
list_init <- function(len=3,listNames=NULL) {
  if(is.null(listNames)){
    res <- vector('list',len)
}else{
  len <- length(listNames);
  res <- vector('list',len);
  names(res) <- listNames;
}
return(res);
  
}  


#' 将2阶的列表转化为数据框
#'
#' @param list2D 二阶列表
#'
#' @return 返回值
#' @export
#'
#' @examples
#' list2d_dataframe()
list2d_dataframe <- function(list2D) {
  data_ls <- lapply(list2D, function(i){
    res <- data.frame(i,stringsAsFactors = F)
    return(res)
  })
  
  res =  do.call('rbind',args = data_ls)
  return(res)
}
takewiki/tsdo documentation built on July 5, 2023, 10:57 p.m.