用户定义的功能 - 多个数据帧输出

时间:2015-05-20 18:09:43

标签: r

我想创建一个能够执行我所有代码行的函数。有一个输入和多个输出,如下所示:

Region_Analysis_Function <- function(Input_Region){
  Subset_Region_Data = subset(Region_Data, Region == Input_Region )
  Seniority_Region = table(Subset_Region_Data$Seniority)
  Seniority_Region = as.data.frame(Seniority_Region)
  {Subset_Region_Data, Seniority_Region}
}

输入是一个名为“Region_Data”的数据框。我希望这个函数将“Subset_Region_Data”和“Seniority_Region”打印为2个不同的数据帧。

打印多个输出的任何方式?

非常感谢!!

1 个答案:

答案 0 :(得分:2)

您正在寻找列表。

你可以这样做:

my_two_df_function <- function(){
  df1 <- data.frame()
  df2 <- data.frame()
  return(list(df1=df1, df2=df2))
}
df_list <- my_two_df_function()
df_list$df1
df_list$df2

您也可以将类型与列表混合......

my_two_df_function <- function(){
  df1 <- data.frame()
  df2 <- data.frame()
  return(list(df1=df1, df2=df2, error_msg="none"))
}
df_list <- my_two_df_function()

df_list$error_msg