爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 60929|回复: 20

[源程序] matlab。站点数据中有nan怎么进行eof分析中的运算

[复制链接]

新浪微博达人勋

发表于 2021-4-8 20:11:26 | 显示全部楼层 |阅读模式
50金钱
S=xlsread('E:\xinan\data3.xlsx');

avg = nanmean(S,1);%平均
b = repmat(avg,42,1);%扩大矩阵
X=S-b;%求距平

因为S里有缺测,缺测点为nan,求平均可以用mean跳过nan数据,但是求距平还需要用S,怎么才能得到没有nan的距平数据呢

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2021-4-8 20:14:39 | 显示全部楼层
可以取0做缺测值的预处理
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-8 20:41:48 | 显示全部楼层
angetina 发表于 2021-4-8 20:14
可以取0做缺测值的预处理

取0误差太大了
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2021-4-8 20:50:26 | 显示全部楼层
或者尝试插值把缺测值补齐
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-8 21:00:33 | 显示全部楼层
angetina 发表于 2021-4-8 20:50
或者尝试插值把缺测值补齐

我用之前用均值来代替,做出来结果和老师的差异很大,老师说可以缺测计算这些东西的,让我自己学习
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2021-4-8 21:09:26 | 显示全部楼层
如果直接缺测的话,用if else求距平,然后缺测值跳过可以嘛?
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-8 21:13:05 | 显示全部楼层
angetina 发表于 2021-4-8 21:09
如果直接缺测的话,用if else求距平,然后缺测值跳过可以嘛?

if else 怎么求呀
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2021-4-8 21:39:38 | 显示全部楼层
for i=1:m
    for j=1:n
        if S(i,j)~=nan
           jupin = S(i,j)-mean
         

评分

参与人数 1金钱 +5 收起 理由
恦之兰泽 + 5 赞一个!

查看全部评分

密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2021-4-8 21:42:31 | 显示全部楼层
跑个循环应该就可以呀
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

 楼主| 发表于 2021-4-8 23:10:14 | 显示全部楼层
angetina 发表于 2021-4-8 21:42
跑个循环应该就可以呀

写循环我也没搞出来
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表