1、使用normrnd或randn函数生成一些一维正态分布的随机变量,其均值µ = 5,标准差σ = 2(若使用randn函数,必须对结果进行变换以使其具有所需的均值和标准差)。应用以下标准化程序,并验证关于变换后变量的均值和方差的相关说明:1. 使用标准差的标准化,公式为z = (x - mean(x)) / std(x) 和z = x / std(x);2. 使用范围的标准化,公式为z = x / (max(x) - min(x)) 和z = (x - min(x)) / (max(x) - min(x))。
随机变量生成与标准化处理
首先,使用 normrnd
函数生成均值为 5、标准差为 2 的一维正态分布随机变量。
若使用 randn
函数,则通过以下公式将结果变换为所需分布( n
为随机变量数量):
x = 2 * randn(n, 1) + 5
标准化程序
1. 使用标准差的标准化
- 公式1:
matlab z = (x - mean(x)) / std(x)
- 公式2:
matlab z = x / std(x)
2. 使用范围的标准化
- 公式1:
matlab z = x / (max(x) - min(x))
- 公式2:
matlab z = (x - min(x)) / (max(x) - min(x))
验证变换结果
使用 MATLAB 函数如 mean
和 var
验证变换后变量的均值和方差,以验证关于位置和分布的说明。例如:
- 对于变换
z = (x - mean(x)) / std(x)
,变换后变量的均值应为 0,方差应为 1。
2、对S曲线数据应用ISOMAP方法。构建数据的散点图,并与LLE的结果进行比较。
可按照以下步骤操作:
-
加载数据:
matlab load scurve
-
运行ISOMAP:
将数据矩阵转换为n x p
格式,计算距离矩阵,然后运行ISOMAP。代码如下:
matlab X