当我创建以下简单函数时,我很困惑。 如果我没有在temp中分配类,那么当我执行该函数时,我在屏幕上看不到任何内容(没有打印或分配给任何东西)
library(dplyr)
library(data.table)
my_percentage <- function(datatable, variable ){
temp <- datatable[, .N, keyby = c(variable)]
temp[, percentage := N/sum(N)]
# temp <- as.data.table(temp)
return(temp)
}
my_percentage(iris %>% as.data.table(), variable = "Species")
# print(my_percentage(iris %>% as.data.table(), variable = "Species"))
但是,如果我在对象中分配任何我将返回的类,那就没问题了。
my_percentage <- function(datatable, variable ){
temp <- datatable[, .N, keyby = c(variable)]
temp[, percentage := N/sum(N)]
temp <- as.data.table(temp)
return(temp)
}
my_percentage(iris %>% as.data.table(), variable = "Species")
任何人都可以向我解释原因吗?