Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在R中正确构造函数有困难_R_List_For Loop - Fatal编程技术网

在R中正确构造函数有困难

在R中正确构造函数有困难,r,list,for-loop,R,List,For Loop,在下面的代码中,我试图在“常规赛”数据集的“分类”列中找到每个项目的平均正确分数 rs_category <- list2env(split(regular_season, regular_season$category), .GlobalEnv) unique_categories <- unique(regular_season$category) for (i in unique_categories) Mean_[i] <- mean(regul

在下面的代码中,我试图在“常规赛”数据集的“分类”列中找到每个项目的平均正确分数

rs_category <- list2env(split(regular_season, regular_season$category), 
        .GlobalEnv)
unique_categories <- unique(regular_season$category)

for (i in unique_categories)
  Mean_[i] <- mean(regular_season$correct[regular_season$category == i], na.rm = TRUE, .groups = 'drop')
  eapply(rs_category, Mean_[i])
print(i)

rs\u category问题在于
意味着
没有
i
名称。在下面的代码中,我们将对象“Mean_”初始化为type
numeric
,其
length
与“unique_categories”的长度相同,然后循环遍历“unique_categories”的序列,得到“correct”的子集,应用
Mean
函数,并将其存储为“Mean_”的
i
th值

Mean_ <- numeric(length(unique_categories))
for(i in seq_along(unique_categories)) {
      Mean_[i] <- mean(regular_season$correct[regular_season$category 
                           == unique_categories[i]], na.rm = TRUE)
   }

或者使用
折叠

library(collapse)
fmean(slt(regular_season, category, correct), g = category)

循环R不是分割数据集,而是使用
for
来进行分组操作,我认为可以在这里使用。可以为每个唯一组(值)应用函数

这将为每个
类别
提供
correct
的平均值,其中
result$Mean
是您要查找的向量

在base R中,这可以通过
aggregate
解决

result <- aggregate(correct~category, regular_season, mean, na.rm = TRUE)

result如果您创建一个小的可复制示例以及预期的输出,将更容易提供帮助。了解。
library(dplyr)

regular_season %>%
  group_by(category) %>%
  summarise(Mean_ = mean(correct, na.rm = TRUE)) -> result
result <- aggregate(correct~category, regular_season, mean, na.rm = TRUE)