![](https://csdnimg.cn/release/download_crawler_static/87987149/bg7.jpg)
标准化变换
本节学习的函数
zscore
当数据的内部一致性不完全相同时,可以考虑标准化一些变量。可以用 Z = (X – mean(X) ./
std(X) 来把变量 X 标准化为标准化为变量 Z。为此也可以[Z, mu, sigma] = zscore(X)来实现相同的功
能,其中 Z 为标准化后的值,mu 和 sigma 分别为用于标准化的均值和标准差。还有一种常用的减
少数据内部差异(如不同被试之间的个体差异)的方法是用关于均值的比例来求相对的值来实现标
准化,如 Y = X ./ mean(X); 这些方法都能够从不同的角度对数据进行标准化。我们需要根据研究中
的假设和变量的意义来选择适当的方法进行标准化。我们用 zscore 标准化一下:
% 调用 rand 函数产生一个 10 行,4 列的随机矩阵,每列服从不同的均匀分布
x = [rand(10,1), 5*rand(10,1), 10*rand(10,1), 500*rand(10,1)]
% 调用 zscore 函数对 x 进行标准化变换(按列标准化),
% 返回变换后矩阵 xz,以及矩阵 x 各列的均值构成的向量 mu,各列的标准差构成的向量 sigma
[xz,mu,sigma] = zscore(x)
std(x) %求标准化前矩阵 x 的各列的标准差
std(xz) % 求标准化后矩阵 xz 的各列的标准差
平滑处理
本节学习的函数
smooth
smoothts
medfilt1
本节学习的函数时间序列数据时,通常需要对此进行一定的平滑处理。平滑处理后得到的平滑
曲线可以用来找曲线的极点、拐点等一些特殊的点,也能够把通常含有噪音污染的数据中去除噪音
的干扰,从而进行统计分析时结果相对稳定可靠。心理学研究中常见的时间序列数据有脑电
(EEG)数据、运动轨迹数据等。
smooth/smoothts
通常使用的平滑处理函数为曲线拟合工具箱(Curve Fitting Toolbox)提供的函数 smooth,也可
以使用金融工具箱(Financial Toolbox)提供的 smoothts 函数来对时间序列数据进行平滑处理。以
下我们以 smooth 函数为例,用不同的平滑处理方法对模拟生成的数据进行平滑处理。
% 生成时间序列
t = linspace(0,2*pi,500)'; % 产生一个从 0 到 2*pi 的向量,长度为 500
y = 100*sin(t); % 产生正弦波信号
% 产生 500 行 1 列的服从 N(0,15)分布的随机数,作为噪声信号
noise = normrnd(0,15,500,1);
y = y + noise; % 将正弦波信号加入噪声信号
methods = {'moving' ... % 移动平均法
'lowess' ... % lowess 方法 (线性拟合)
'loess' ... % Loess 方法(二次曲线拟合)
'sgolay' ... % Savitzky-Golay 法