找回密码
 注册
关于网站域名变更的通知
查看: 652|回复: 4
打印 上一主题 下一主题

请教怎么用matlab对数据进行归一化处理?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2021-6-21 09:44 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
请教各位如何用matlab对数据进行归一化处理,代码该如何编写?1 ~$ P7 O/ ^  o, v8 ?# j: f8 n
我想把这组数据作归一化处理,请指点。
7 g' Q9 }5 I8 E; K( e1 V, {1 L
12
15
168
14.52
42.51
176
18
103.6
184
20.2
57.4
144.68
42.43
26
136
65.6
75.23
141
68
37
141

: w/ b4 D! {1 C' ^$ e. S, |) _6 t% b( W+ F' v

该用户从未签到

2#
发表于 2021-6-21 11:19 | 只看该作者
可以从help里找一些函数,试一下
  • TA的每日心情
    难过
    2019-11-20 15:02
  • 签到天数: 1 天

    [LV.1]初来乍到

    3#
    发表于 2021-6-21 14:11 | 只看该作者
    matlab有一个函数:PREMNMX
    0 _! i7 }/ g# u8 qPreprocesses data so that minimum is -1 and maximum is 1.6 m- w9 z$ e' ^
    你可以查看它的算法的代码看是不是你要的那种算法。
    6 U# w" S8 h1 _1 F% H% l: ~# H2 l4 l9 Z3 ?, S# W0 K0 A
    数据统计分析统计我是外行

    该用户从未签到

    4#
     楼主| 发表于 2021-6-21 14:12 | 只看该作者
    我用的程序做了一下归一化:a =
    ! z$ H/ a7 Q& @
    1 n/ h' \  [. S' y1 [* Z6 F     1     2     3     4
    / Y: d1 `: D8 d3 P     2     1     3     48 _9 k) w! l! w; M
         2     3     6     7
    " n' Z; e# y" j3 O' \& W- H     2     2     1     1
    % J/ l% U: ~, I* m5 W& Z
    3 t* N/ G8 R, U2 N8 z>> c=normalization(a,1)
    " E  W0 z& e/ q' ?/ L4 H: q7 D* i+ A, a8 w1 b* V
    c =
    1 ]7 Q+ @7 ^* a* G' l3 G# S# D' L1 L; p: m" C" y" h) s
             0    0.3333    0.6667    1.00002 n- Y  D) Z1 Y7 D- d$ P) z
        0.3333         0    0.6667    1.0000' ]. |2 Y" \% _* U, C
             0    0.2000    0.8000    1.00009 c7 \7 g7 l' \1 ?+ h+ R
        1.0000    1.0000         0         0" C' J3 V0 m: s7 x
    怎么结果会是这样呢?不应该每行和为1吗?+ @. e* W- T: |; ?5 m

    点评

    这儿的归一化指的是把数据归一化到[0 1]范围,并不是每行和为1。 你要的结果可以通过下面的代码实现: [*]a=[1 2 3 4 [*] 2 1 3 4 [*] 2 3 6 7 [*] 2 2  详情 回复 发表于 2021-6-21 14:13
  • TA的每日心情

    2019-11-20 15:22
  • 签到天数: 2 天

    [LV.1]初来乍到

    5#
    发表于 2021-6-21 14:13 | 只看该作者
    BarndM7 发表于 2021-6-21 14:12
    - N, D3 N7 z! M我用的程序做了一下归一化:a =1 Q! P# p# x% u/ ~+ s

    + }9 X2 W/ |  N  C4 @3 R% _  }$ X     1     2     3     4
    + l% c  O' [8 O. u7 y
    这儿的归一化指的是把数据归一化到[0 1]范围,并不是每行和为1。
    % e, }6 J! l7 E# n& z你要的结果可以通过下面的代码实现:
    0 U$ \  K; w; B5 N  U
    • a=[1     2     3     4
    •      2     1     3     4
    •      2     3     6     7
    •      2     2     1     1];
    • temp=sum(a,2);
    • a=a./repmat(temp,1,size(a,2));4 p- ^  Y1 c9 Z- p6 f6 o
    . m8 q/ w& s' U! C4 [+ |
    3 p: B1 z" I4 V+ f6 I

    9 }, ^. R# Q/ ~4 W
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-29 10:21 , Processed in 0.203125 second(s), 28 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

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