如何使函数 return 两列不同类型 (R)?

How to make a function return two columns of different types (R)?

所以我有一个函数可以将简单的算术应用于数据框 (TypeChart) 的三列数字数据并将其绑定到数据框的行名称:

TypeCombo <- function(type1, type2, type3) {
  cbind(row.names(TypeChart), TypeChart[,type1] * TypeChart[,type2] * TypeChart[,type3])
}

这确实成功地将三列相乘,但 return将它们作为字符向量而不是数字向量。我可以在此函数中将某些内容更改为 return a list/dataframe,第一列是字符,第二列是数字吗?

cbind 不是 return 一个 data.frame 而是一个矩阵。试试这个:

TypeCombo <- function(type1, type2, type3) {
  data.frame(names = row.names(TypeChart),
             values = TypeChart[,type1] * TypeChart[,type2] * TypeChart[,type3])
}