我用的是卫星数据的日数据,现在要计算一个月的平均,但是日数据里面有很多值带有NaN。比如点1,第一天有数值,第二天是NaN...这样的数据计算月平均听说需要nanmean,但是我help不出这个函数,是需要下载什么工具箱吗,或者有什么其他的方法处理这个平均数据吗
1条回答 默认 最新
技术专家团-Joel 2021-09-24 22:11关注你好同学,像这种日数据月平均的话,建议使用datetime数组,这样的话月平均就很简单啦,nan操作更是不晓得多方便!!!
比如你的数据是这样的
(复制粘贴存入data.csv文件)Date, Data 2021/08/24, 10 2021/08/25, NaN 2021/09/24, 10 2021/09/25, NaN 2021/09/26, 8 2021/10/24, 10 2021/10/25, 6 2021/10/26, 8然后读入文档:
T = readtable('data.csv', 'preservevariablenames', 1); TT = table2timetable(T,'RowTimes','Date'); TT2 = retime(TT,'monthly',@(x)mean(x,'omitnan'))% 忽略NaN,进行平均 writetimetable(TT2,'meanTable.csv')可以看看平均结果
TT2 = 3×1 timetable Date Data __________ ____ 2021/08/01 10 2021/09/01 9 2021/10/01 8可见效果非常不错
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报