「这是我参与11月更文挑战的第25天,活动详情查看:2021最后一次更文挑战」。
数据预处理
为什么要进行数据预处理
我们采集到的数据很有可能有很多错误的信息,同时需要对不同性质的信息进行比较,因此,在做数据分析之前,必须进行数据预处理。
Min-max标准化
min-max标准化方法是对原始数据进行线性变换。将A的一个原始数据映射到区间[0,1]中。
公式为:
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等)。
注:
- 在解个未知函数的方程组时,和均为维向量,文件中的待解方程组应以的分量形式写成。
- MATLAB提供了个常微分方程求解器(solver)分别是ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb,其中前3个适用于求解非刚性(Nonstiff)问题,后个适用于刚性问题。
- 刚性:设有一阶常系数线性微分方程组,如果它的Jacobian矩阵的特征值相差十分悬殊;简单点说,就是系统包含多个相互作用但变化速度相差十分悬殊的子过程。