Matmab数据处理
Matlab生成正态分布的数据
需要两个指标, 一个是原有数据的平均数(μ)和标准差(σ)
- 平均数计算函数
mean(数据, 维度)
- 标准差计算函数
std(数据, w, 维度)
第二个参数w
决定了用哪一个标准差函数,如果取0,则代表除以N-1,如果是1代表的是除以N。
如数据为 data = [1 2 3]
, 那么 std(data, 0)
计算的结果就是根号sqrt((1+1)/(3-1))=1
, std(data, 1)
计算的结果就是sqrt((1+1)/3)=0.81645了
最后得到正态分布的公式是 标准差* randn(NUM, 1)+平均数
1 | new_data(i, :) = std_data(i)*randn(NUM, 1) +mu_data(i); |
其中NUM是生成多少个数据, 可以用hist()
函数画出生成数据的直方图看看是不是正态分布的
标准化函数
标准化
zscore
(data, 0, 1) 1代表列