matlab数据处理

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代表列