gpt4 book ai didi

R语言求一行(列表、list)数据的平均数操作

转载 作者:qq735679552 更新时间:2022-09-27 22:32:09 28 4
gpt4 key购买 nike

CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.

这篇CFSDN的博客文章R语言求一行(列表、list)数据的平均数操作由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.

R语言求一个列表的平均数可以使用mean() :

mean英文意思有平均数的含义 。

x=c(1,3,5,7,9)max(x)#这样即可求得平均数为 : 5

假如读取过一个csv文件之后,要求其中一行数据中指定某个区间内的平均数可以使用rowMeans() 。

R语言求一行(列表、list)数据的平均数操作

data = read.csv(“input.csv",sep=",",header=T)rowMeans(data[10:17])

补充:R语言-数据框分组求平均值 。

【技术关键】 。

1、从excel把数据读到数据框 。

2、算法实现将数据框的一些数据合为新的数据并组成新的数据框 。

3、将处理结果,即新的数据框保存到excel文件(或.csv) 。

4、将绘图结果输出到PDF文件保存 。

最近在尝试分析近日的环境温湿度变化; 。

虽然设备只运行了48小时左右; 。

但收集到的有效数据有30000+(当然对于R而言这算很小意思的了); 。

由于环境温湿度在一小段时间内基本保持稳定; 。

所以在分析几日内的温湿度变化情况时可以以每10min为单位记录数据; 。

这就需要一个脚本,能将数据有效划分为单位后求均值再保存到表; 。

#################################################### - Filename : washData.R# - Author : Johan Version : 1.0 Date : 2018/5/3# - Discription : 将excel表中的数据分10min计算平均值#     并保存到excel# - Function list : # 1.# - Others : # 1.本程序可分析.xls或.csv文件#################################################### 引用包library(RODBC)# 设置工作目录setwd("H:/mySoftware/R/myData")# 导入数据到myDataFrame,文件名根据需要改变# 打开th_record2.xls,并读取表Sheet1channel <- odbcConnectExcel2007("th_record2.xls")myDataFrame <- sqlFetch(channel, "Sheet1")odbcClose(channel)# 为myDataFrame增加列名dataColName <- c("temp","humi","time","year","month","day","hour","minute","second")names(myDataFrame) <- dataColName# 初始化缓存向量# 时分秒为起始量,可修改NUM <- c()   # 编号TEMP <- c()   # 温度HUMI <- c()   # 湿度t <- 0    # 温度缓存h <- 0    # 湿度缓存num <- 0    # 编号缓存dn <- 0    # 计数器flag <- FALSE  # 保存指示# 循环处理数据for(i in 1 : 31600){# 当前分钟是否为10的倍数if(myDataFrame$minute[i] %% 10 == 0){# 计算上一组数据的均值并保存if(flag){t <- t / dnh <- h / dnTEMP <- c(TEMP, t)HUMI <- c(HUMI, h)num <- num + 1NUM <- c(NUM, num)flag <- FALSE}# 缓存复位dn <- 0t <- 0h <- 0# 添加记录t <- t + myDataFrame$temp[i]h <- h + myDataFrame$humi[i]dn <- dn + 1 }else{# 添加记录t <- t + myDataFrame$temp[i]h <- h + myDataFrame$humi[i]dn <- dn + 1flag <- TRUE }}# 构建新数据框newFrame <- data.frame(NUM, TEMP, HUMI)newName <- c("number","temp","humi")names(newFrame) <- newName# 写入.csv文件write.csv(newFrame, "new_th_record.csv")# 绘图plot(newFrame$number, newFrame$temp, pch=20, lty=3, col="red")lines(newFrame$number, newFrame$humi, pch=20, lty=3, col="blue")

把处理结果保存到新的.csv或者.xls文件即是整个脚本的目的所在,方便后面的数据分析.

运行后得到的效果如下:(由于温湿度的数值不在一个层次所以反映得不太直观,可尝试调换plot和lines的顺序,通过绘图方面的学习可以画出更好看的图) 。

R语言求一行(列表、list)数据的平均数操作

如果想要输出为PDF保存该图片,可以运行另一个脚本:

pdf("new_th_record.pdf")plot(newFrame$number, newFrame$humi, pch=20, lty=3, col="blue")lines(newFrame$number, newFrame$temp, pch=20, lty=3, col="red")dev.off()

PDF文件的一个好处就是它里面的图片是矢量的,也就是说放大图片不会改变图片的原样,原本看上去粘在一块儿的点放大以后能看出来是分开的.

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我。如有错误或未考虑完全的地方,望不吝赐教.

原文链接:https://blog.csdn.net/weixin_42063071/article/details/89220463 。

最后此篇关于R语言求一行(列表、list)数据的平均数操作的文章就讲到这里了,如果你想了解更多关于R语言求一行(列表、list)数据的平均数操作的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com