数据预处理
为什么要进行数据预处理
我们采集到的数据很有可能有很多错误的信息,同时需要对不同性质的信息进行比较,因此,在做数据分析之前,必须进行数据预处理。
Min-max标准化
min-max标准化方法是对原始数据进行线性变换。将A的一个原始数据映射到区间[0,1]中。
公式为:
n e w r e s o u r c e = ( r e s o u r c e − m i n ) / ( m a x − m i n ) new_resource=(resource-min)/(max-min) newresource=(resource−min)/(max−min)
matlab程序中:X_new=(X-min(X))/(max(X)-min(X))
2.z-score标准化
这种方法是基于原属数据的均值(mean)和标准差(std)进行数据的标准化。将A的原始值x使用z-score标准化到x’。
此方法适用于属性A的最值未知或有超出取值范围的利离群数据的情况。
新数据=(原数据-均值)/标准差
matlab程序:X_new=zscore(X)
或X_new=(X-mean(X))/std(X)
求微分方程的解析解
matlab命令:
dsolve(‘方程1’, ‘方程2’,…‘方程n’, ‘初始条件’, ‘自变量’)
例如:d²y/dx²=0,对应表达式为D2y=0。
求通解
dsolve(‘Du=1+u^2’,‘t’)
方程组情况
[x,y,z]=dsolve(‘Dx=2x-3y+3z’,'Dy=4x-5y+3z’,‘Dz=4x-4y+2*z’, ‘t’)
xyz分别保存三个未知数的通解
求特解
y=dsolve(‘D2y+4Dy+29y=0’,‘y(0)=0,Dy(0)=15’,‘x’)
求微分方程的数值解
- 将高阶方程转化为一阶方程组。
- 建立相应的函数文件。
- 调用求解函数solver(ode23、ode45等)。
注:
- 在解 n n n个未知函数的方程组时, x 0 x_0 x0和 x x x均为 n n n维向量, m m m文件中的待解方程组应以 x x x的分量形式写成。
- MATLAB提供了 7 7 7个常微分方程求解器(solver)分别是ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb,其中前3个适用于求解非刚性(Nonstiff)问题,后 4 4 4个适用于刚性问题。
- 刚性:设有一阶常系数线性微分方程组 y ′ = A y + f y'=Ay+f y′=Ay+f,如果它的Jacobian矩阵的特征值相差十分悬殊;简单点说,就是系统包含多个相互作用但变化速度相差十分悬殊的子过程。