You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在R中计算文本文件指定列的均值?

修改R代码以计算指定列的15分钟均值

直接修改summarise里的across参数,指定需要计算均值的目标列即可,以下是修改后的完整代码:

# 定义需要计算均值的指定列
target_cols <- c("Temp [C]", "Press [Pa]", "Pow [W]")

xyz <- xy %>% 
    as_tibble() %>%
    group_by(time_sp = lubridate::floor_date(`Date/Time`, "15 mins")) %>% 
    summarise(across(all_of(target_cols), ~ if(mean(is.na(.x)) > 0.5) NA else mean(.x, na.rm = TRUE)))

write.csv(xyz, paste0(dirlist[idx],"15row.csv"), row.names = FALSE)

关键修改说明:

  • 新增target_cols变量,把需要计算的列名(和数据中完全一致,包括空格、括号)放在向量里,方便后续调整
  • 把原来的across(where(is.numeric), ...)替换成across(all_of(target_cols), ...),这样就只会对指定列执行均值计算
  • 保留了原代码中对NA值的判断逻辑:如果某列NA占比超过50%,则该分组的均值返回NA,否则计算非NA值的均值

注意事项:

  • 确保target_cols里的列名和你的文本文件中的列名完全匹配,大小写、空格、符号都不能错
  • 如果需要新增或删除目标列,直接修改target_cols向量即可

内容的提问来源于stack exchange,提问作者Alexia k Boston

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 16:47:14