1 缺失值处理
删除
- 在当前缺失值属于极小的一个个体,并且当前值的删除对于要建立的模型无后效性时可以直接将当前值进行删除
人工填补
2 异常值处理
正态分布的异常值处理
3 数据标准化处理
Z-Score 标准差标准化
- 计算公式为\(y_{i}=\frac{(x-mean)}{std},i\in [1,n]\),结果映射到区间\([0,1]\),\(y_{i}\)的均值为\(0\),方差为\(1\),无量纲
- matlab中函数为\(zscore\)
clc,clear;
X=[790 3977 849 1294 1927 1105 204 1329;
768 5037 1135 1330 1925 1459 275 1487;
942 2793 820 814 1617 942 155 976;
916 2798 901 932 1599 910 182 1135;
1006 2864 1052 1005 1618 839 196 1081]
Y1=zscore(X);
mean(X) %求得的是每一列的均值
repmat(mean(X),5,1) %每一列都是其所在列的均值
Y2=(X-repmat(mean(X),5,1)) ./repmat(std(X),5,1);
min-max归一化
- \(y_{i}=\frac{x_{i}-min}{max-min}\),直接处理后将每一行映射为\([0,1]\)区间内的数
- 直接调用\(mapminmax(x,l,r)\),\(l,r\)为映射后的上下界
clc,clear;
X=[790 3977 849 1294 1927 1105 204 1329;
768 5037 1135 1330 1925 1459 275 1487;
942 2793 820 814 1617 942 155 976;
916 2798 901 932 1599 910 182 1135;
1006 2864 1052 1005 1618 839 196 1081];
Y=mapminmax(X,0,1)
经纬度转换为平面坐标
- \((u,v)\)表示一个点的经纬度,\(u\)表示经度,\(v\)表示纬度
- 以地心\(o\)为原点坐标,赤道平面为\(xoy\)平面建立直角坐标系得到
- \(\left\{\begin{array}{l}x=R \cos u \cos v \\ y=R \sin u \cos v \\ z=R \sin v\end{array}\right.\)
- \(R\)为地球半径\(6370\)
- 根据解析几何的知识得到任意两点\(A(u_{A},v_{A}),B(u_{B},v_{B})\)之间的距离为
- \(d=R \arccos \left(\frac{O A \cdot O B}{|O A| \cdot|O B|}\right)\)
- 带入得到的\(x、y、z\)的表达式可以得到\(d=R \arccos \left[\cos \left(u_{A}-u_{B}\right) \cos v_{A} \cos v_{B}+\sin v_{A} \sin v_{B}\right]\)