# 优化
# 1.不显示错误警告
import warnings
warnings.filterwarnings('ignore')
# 2.画图过程中的中文显示
from matplotlib import pyplot as plt
plt.rcParams['font.family'] = ['sans-serif']
plt.rcParams['font.sans-serif'] = ['SimHei']
# 导入数据
from pandas import read_csv
filename = 'sonar.all-data.csv'
dataset = read_csv(filename, header=None)
print(dataset)
0 1 2 3 4 5 6 7 8 9 ... 51 \
0 0.020 3.710e-02 0.043 0.021 0.095 0.099 0.154 0.160 0.311 0.211 ... 2.700e-03
1 0.045 5.230e-02 0.084 0.069 0.118 0.258 0.216 0.348 0.334 0.287 ... 8.400e-03
2 0.026 5.820e-02 0.110 0.108 0.097 0.228 0.243 0.377 0.560 0.619 ... 2.320e-02
3 0.010 1.710e-02 0.062 0.021 0.021 0.037 0.110 0.128 0.060 0.126 ... 1.210e-02
4 0.076 6.660e-02 0.048 0.039 0.059 0.065 0.121 0.247 0.356 0.446 ... 3.100e-03
5 0.029 4.530e-02 0.028 0.017 0.038 0.099 0.120 0.183 0.210 0.304 ... 4.500e-03
6 0.032 9.560e-02 0.132 0.141 0.167 0.171 0.073 0.140 0.208 0.351 ... 2.010e-02
7 0.052 5.480e-02 0.084 0.032 0.116 0.092 0.103 0.061 0.146 0.284 ... 8.100e-03
8 0.022 3.750e-02 0.048 0.048 0.065 0.059 0.075 0.010 0.068 0.149 ... 1.450e-02
9 0.016 1.730e-02 0.035 0.007 0.019 0.067 0.106 0.070 0.096 0.025 ... 9.000e-03
10 0.004 6.300e-03 0.015 0.034 0.031 0.028 0.040 0.027 0.032 0.045 ... 6.200e-03
11 0.012 3.090e-02 0.017 0.031 0.036 0.010 0.018 0.058 0.112 0.084 ... 1.330e-02
12 0.008 8.600e-03 0.005 0.025 0.034 0.055 0.053 0.096 0.101 0.124 ... 1.760e-02
13 0.009 6.200e-03 0.025 0.049 0.120 0.159 0.139 0.099 0.096 0.190 ... 5.900e-03
14 0.012 4.330e-02 0.060 0.045 0.060 0.035 0.053 0.034 0.105 0.212 ... 8.300e-03
15 0.030 6.150e-02 0.065 0.092 0.162 0.229 0.218 0.203 0.146 0.085 ... 3.100e-03
16 0.035 1.160e-02 0.019 0.047 0.074 0.118 0.168 0.154 0.147 0.291 ... 3.460e-02
17 0.019 6.070e-02 0.038 0.077 0.139 0.081 0.057 0.022 0.104 0.119 ... 3.310e-02
18 0.027 9.200e-03 0.015 0.028 0.041 0.076 0.103 0.114 0.079 0.152 ... 8.400e-03
19 0.013 1.490e-02 0.064 0.173 0.257 0.256 0.295 0.411 0.498 0.592 ... 9.200e-03
20 0.047 5.090e-02 0.082 0.125 0.178 0.307 0.301 0.236 0.383 0.376 ... 1.930e-02
21 0.066 5.750e-02 0.084 0.037 0.046 0.077 0.077 0.113 0.235 0.184 ... 1.410e-02
22 0.010 4.840e-02 0.030 0.030 0.065 0.108 0.236 0.238 0.007 0.188 ... 1.730e-02
23 0.011 1.500e-02 0.014 0.008 0.021 0.106 0.102 0.044 0.093 0.073 ... 9.100e-03
24 0.029 6.440e-02 0.039 0.017 0.048 0.082 0.099 0.032 0.074 0.086 ... 3.500e-03
25 0.020 2.600e-03 0.014 0.006 0.013 0.015 0.054 0.021 0.051 0.110 ... 1.080e-02
26 0.015 3.200e-02 0.060 0.105 0.116 0.173 0.168 0.112 0.089 0.120 ... 6.100e-03
27 0.018 3.000e-02 0.029 0.039 0.063 0.053 0.069 0.063 0.062 0.061 ... 1.020e-02
28 0.010 2.750e-02 0.019 0.037 0.042 0.020 0.031 0.065 0.190 0.267 ... 8.800e-03
29 0.019 3.080e-02 0.020 0.062 0.008 0.079 0.144 0.145 0.179 0.252 ... 3.800e-03
30 0.024 2.180e-02 0.032 0.057 0.033 0.051 0.090 0.071 0.057 0.039 ... 1.620e-02
31 0.008 1.530e-02 0.029 0.043 0.095 0.075 0.041 0.026 0.069 0.175 ... 2.360e-02
32 0.019 2.130e-02 0.006 0.019 0.032 0.057 0.100 0.067 0.069 0.024 ... 1.570e-02
33 0.044 4.770e-02 0.005 0.058 0.028 0.068 0.166 0.149 0.097 0.127 ... 2.040e-02
34 0.031 4.910e-02 0.069 0.083 0.008 0.020 0.098 0.102 0.203 0.077 ... 8.700e-03
35 0.021 1.320e-02 0.053 0.057 0.065 0.143 0.134 0.204 0.157 0.157 ... 3.860e-02
36 0.009 1.660e-02 0.040 0.036 0.068 0.071 0.102 0.089 0.038 0.133 ... 1.410e-02
37 0.033 2.210e-02 0.027 0.048 0.068 0.098 0.084 0.117 0.076 0.092 ... 2.200e-03
38 0.012 2.200e-03 0.020 0.021 0.018 0.049 0.003 0.040 0.079 0.048 ... 1.250e-02
39 0.009 2.130e-02 0.021 0.051 0.066 0.080 0.097 0.087 0.074 0.084 ... 1.120e-02
40 0.007 2.320e-02 0.051 0.044 0.025 0.064 0.042 0.113 0.191 0.247 ... 1.730e-02
41 0.009 1.850e-02 0.006 0.006 0.026 0.046 0.047 0.006 0.043 0.064 ... 6.900e-03
42 0.021 3.190e-02 0.042 0.029 0.012 0.044 0.130 0.139 0.070 0.057 ... 9.000e-03
43 0.009 2.690e-02 0.022 0.034 0.030 0.117 0.145 0.064 0.074 0.136 ... 2.120e-02
44 0.026 4.470e-02 0.039 0.024 0.132 0.132 0.161 0.214 0.085 0.056 ... 9.600e-03
45 0.041 6.530e-02 0.040 0.060 0.050 0.182 0.118 0.102 0.058 0.218 ... 6.200e-03
46 0.031 3.390e-02 0.020 0.089 0.157 0.175 0.092 0.135 0.159 0.280 ... 1.670e-02
47 0.037 2.810e-02 0.023 0.022 0.018 0.073 0.084 0.103 0.099 0.080 ... 8.000e-04
48 0.019 3.800e-03 0.064 0.045 0.033 0.069 0.090 0.145 0.074 0.035 ... 9.300e-03
49 0.012 5.820e-02 0.062 0.060 0.140 0.188 0.142 0.145 0.049 0.086 ... 2.500e-03
50 0.035 7.130e-02 0.033 0.027 0.037 0.079 0.108 0.069 0.030 0.088 ... 1.630e-02
51 0.013 6.800e-03 0.031 0.031 0.009 0.077 0.077 0.064 0.073 0.090 ... 6.200e-03
52 0.009 4.600e-03 0.008 0.023 0.059 0.068 0.099 0.072 0.058 0.082 ... 5.200e-03
53 0.029 3.780e-02 0.026 0.006 0.013 0.061 0.089 0.111 0.097 0.075 ... 6.500e-03
54 0.013 8.000e-03 0.019 0.014 0.044 0.067 0.061 0.013 0.090 0.092 ... 4.400e-03
55 0.020 1.160e-02 0.012 0.025 0.055 0.021 0.089 0.084 0.134 0.120 ... 7.600e-03
56 0.015 1.020e-02 0.011 0.026 0.010 0.039 0.086 0.091 0.095 0.150 ... 4.900e-03
57 0.022 1.240e-02 0.017 0.015 0.061 0.103 0.114 0.088 0.116 0.087 ... 5.200e-03
58 0.022 1.900e-03 0.007 0.010 0.044 0.091 0.089 0.066 0.162 0.145 ... 3.400e-03
59 0.013 1.520e-02 0.022 0.018 0.036 0.070 0.087 0.062 0.125 0.130 ... 4.100e-03
60 0.013 6.000e-04 0.009 0.046 0.052 0.078 0.093 0.094 0.171 0.148 ... 7.800e-03
61 0.013 4.500e-03 0.005 0.029 0.056 0.093 0.103 0.088 0.160 0.191 ... 3.700e-03
62 0.009 2.150e-02 0.024 0.044 0.067 0.077 0.050 0.091 0.123 0.118 ... 7.200e-03
63 0.007 9.600e-03 0.002 0.006 0.020 0.062 0.043 0.095 0.084 0.118 ... 4.800e-03
64 0.007 1.030e-02 0.013 0.049 0.025 0.081 0.070 0.074 0.012 0.090 ... 4.300e-03
65 0.018 1.720e-02 0.050 0.029 0.026 0.035 0.036 0.053 0.026 0.047 ... 4.200e-03
66 0.026 4.400e-02 0.014 0.008 0.030 0.044 0.034 0.078 0.084 0.078 ... 3.800e-03
67 0.037 4.030e-02 0.032 0.029 0.082 0.134 0.116 0.066 0.015 0.051 ... 9.100e-03
68 0.019 1.420e-02 0.018 0.041 0.039 0.025 0.089 0.097 0.084 0.119 ... 2.800e-03
69 0.022 2.150e-02 0.027 0.014 0.036 0.079 0.091 0.091 0.115 0.097 ... 1.400e-02
70 0.006 1.220e-02 0.007 0.011 0.022 0.028 0.053 0.058 0.105 0.111 ... 6.900e-03
71 0.004 7.800e-03 0.009 0.039 0.053 0.120 0.124 0.103 0.124 0.089 ... 1.190e-02
72 0.021 1.860e-02 0.013 0.021 0.061 0.061 0.061 0.051 0.099 0.109 ... 7.400e-03
73 0.014 2.220e-02 0.009 0.011 0.021 0.014 0.066 0.095 0.079 0.102 ... 6.200e-03
74 0.011 9.300e-03 0.012 0.038 0.068 0.086 0.100 0.066 0.094 0.104 ... 7.700e-03
75 0.020 1.040e-02 0.033 0.024 0.081 0.153 0.115 0.061 0.132 0.137 ... 1.270e-02
76 0.024 1.890e-02 0.047 0.044 0.066 0.074 0.138 0.110 0.138 0.138 ... 9.100e-03
77 0.034 2.940e-02 0.048 0.054 0.079 0.080 0.114 0.123 0.123 0.084 ... 1.500e-02
78 0.023 3.510e-02 0.003 0.030 0.034 0.086 0.174 0.135 0.106 0.035 ... 1.060e-02
79 0.011 8.600e-03 0.006 0.046 0.075 0.089 0.102 0.049 0.047 0.039 ... 2.900e-03
80 0.023 3.690e-02 0.004 0.037 0.045 0.145 0.221 0.119 0.075 0.163 ... 6.400e-03
81 0.010 1.940e-02 0.015 0.049 0.084 0.101 0.163 0.207 0.270 0.299 ... 1.300e-02
82 0.041 4.210e-02 0.057 0.013 0.018 0.102 0.105 0.107 0.230 0.226 ... 2.800e-03
83 0.022 3.400e-02 0.039 0.024 0.108 0.116 0.140 0.101 0.115 0.178 ... 3.100e-03
84 0.038 3.180e-02 0.042 0.035 0.179 0.164 0.089 0.082 0.178 0.205 ... 4.600e-03
85 0.036 1.632e-01 0.164 0.142 0.113 0.131 0.211 0.227 0.299 0.373 ... 1.100e-02
86 0.019 3.700e-02 0.095 0.082 0.025 0.049 0.142 0.197 0.187 0.181 ... 9.300e-03
87 0.086 4.540e-02 0.038 0.020 0.038 0.053 0.214 0.311 0.284 0.275 ... 1.720e-02
88 0.027 2.420e-02 0.062 0.056 0.113 0.097 0.182 0.174 0.144 0.181 ... 1.130e-02
89 0.024 2.910e-02 0.075 0.052 0.023 0.083 0.068 0.200 0.288 0.367 ... 8.300e-03
90 0.013 5.190e-02 0.062 0.052 0.107 0.259 0.230 0.207 0.342 0.428 ... 2.080e-02
91 0.025 8.080e-02 0.051 0.024 0.172 0.382 0.373 0.358 0.343 0.220 ... 1.780e-02
92 0.026 1.920e-02 0.025 0.006 0.035 0.070 0.126 0.108 0.152 0.163 ... 1.180e-02
93 0.046 4.370e-02 0.035 0.046 0.007 0.089 0.180 0.174 0.160 0.141 ... 6.700e-03
94 0.003 3.090e-02 0.017 0.023 0.043 0.122 0.195 0.166 0.137 0.143 ... 1.490e-02
95 0.029 4.000e-02 0.077 0.081 0.052 0.105 0.015 0.067 0.129 0.115 ... 5.600e-03
96 0.018 1.460e-02 0.003 0.014 0.042 0.047 0.036 0.074 0.140 0.104 ... 2.230e-02
97 0.049 2.790e-02 0.059 0.127 0.177 0.191 0.222 0.077 0.125 0.203 ... 8.100e-03
98 0.131 2.339e-01 0.306 0.426 0.401 0.179 0.185 0.005 0.193 0.223 ... 3.620e-02
99 0.020 4.230e-02 0.055 0.078 0.062 0.087 0.120 0.271 0.121 0.028 ... 1.910e-02
100 0.063 1.065e-01 0.153 0.123 0.144 0.119 0.088 0.091 0.211 0.360 ... 8.900e-03
101 0.034 1.340e-02 0.070 0.118 0.035 0.118 0.195 0.161 0.304 0.437 ... 2.440e-02
102 0.059 1.210e-01 0.127 0.150 0.144 0.056 0.083 0.067 0.137 0.235 ... 3.310e-02
103 0.016 2.530e-02 0.026 0.039 0.065 0.047 0.106 0.139 0.060 0.133 ... 7.100e-03
104 0.031 5.230e-02 0.065 0.052 0.061 0.058 0.067 0.066 0.146 0.279 ... 3.210e-02
105 0.012 1.790e-02 0.045 0.110 0.191 0.092 0.076 0.109 0.076 0.101 ... 1.630e-02
106 0.033 4.230e-02 0.047 0.082 0.084 0.076 0.037 0.096 0.055 0.019 ... 7.800e-03
107 0.043 5.550e-02 0.071 0.062 0.121 0.152 0.154 0.039 0.061 0.011 ... 1.420e-02
108 0.060 4.740e-02 0.050 0.039 0.103 0.077 0.085 0.045 0.109 0.035 ... 1.300e-03
109 0.026 7.100e-03 0.034 0.079 0.104 0.078 0.142 0.118 0.045 0.095 ... 2.140e-02
110 0.021 1.210e-02 0.020 0.104 0.168 0.042 0.072 0.083 0.049 0.069 ... 1.170e-02
111 0.053 8.850e-02 0.200 0.260 0.323 0.225 0.062 0.229 0.095 0.074 ... 2.440e-02
112 0.045 4.720e-02 0.070 0.102 0.140 0.149 0.149 0.077 0.117 0.168 ... 1.200e-02
113 0.028 5.990e-02 0.066 0.023 0.084 0.167 0.115 0.110 0.137 0.177 ... 1.470e-02
114 0.011 2.220e-02 0.027 0.038 0.122 0.206 0.149 0.093 0.135 0.180 ... 2.690e-02
115 0.041 4.360e-02 0.045 0.084 0.042 0.121 0.200 0.152 0.082 0.198 ... 4.500e-03
116 0.009 3.330e-02 0.031 0.038 0.130 0.179 0.191 0.169 0.187 0.172 ... 1.530e-02
117 0.023 1.060e-02 0.013 0.084 0.112 0.151 0.178 0.100 0.143 0.223 ... 9.800e-03
118 0.036 4.780e-02 0.030 0.021 0.141 0.192 0.135 0.161 0.170 0.144 ... 1.150e-02
119 0.026 2.660e-02 0.022 0.075 0.136 0.151 0.132 0.165 0.186 0.201 ... 2.220e-02
120 0.035 5.090e-02 0.008 0.024 0.043 0.073 0.094 0.113 0.123 0.151 ... 4.000e-03
121 0.016 4.100e-03 0.024 0.044 0.063 0.092 0.137 0.108 0.155 0.178 ... 1.730e-02
122 0.025 1.190e-02 0.028 0.076 0.122 0.154 0.119 0.123 0.212 0.253 ... 2.700e-03
123 0.027 1.630e-02 0.034 0.025 0.082 0.126 0.132 0.158 0.202 0.212 ... 1.890e-02
124 0.039 3.240e-02 0.069 0.090 0.127 0.151 0.213 0.261 0.283 0.272 ... 2.550e-02
125 0.023 8.530e-02 0.100 0.043 0.112 0.165 0.160 0.212 0.330 0.352 ... 1.720e-02
126 0.071 8.490e-02 0.059 0.022 0.086 0.180 0.192 0.190 0.296 0.419 ... 1.530e-02
127 0.021 2.610e-02 0.012 0.077 0.106 0.168 0.302 0.346 0.331 0.412 ... 5.700e-03
128 0.037 5.860e-02 0.063 0.053 0.025 0.142 0.207 0.273 0.307 0.260 ... 1.180e-02
129 0.137 1.226e-01 0.139 0.148 0.178 0.143 0.177 0.216 0.163 0.207 ... 1.180e-02
130 0.044 4.460e-02 0.024 0.101 0.225 0.261 0.206 0.167 0.180 0.308 ... 2.740e-02
131 0.115 1.163e-01 0.087 0.036 0.023 0.127 0.242 0.266 0.435 0.538 ... 9.900e-03
132 0.097 8.210e-02 0.063 0.061 0.062 0.121 0.094 0.422 0.574 0.502 ... 7.300e-03
133 0.079 7.070e-02 0.035 0.166 0.133 0.023 0.077 0.268 0.566 0.661 ... 2.980e-02
134 0.108 1.070e-01 0.026 0.084 0.075 0.113 0.332 0.459 0.553 0.597 ... 1.800e-02
135 0.009 6.110e-02 0.114 0.120 0.040 0.123 0.249 0.457 0.659 0.508 ... 2.340e-02
136 0.109 1.278e-01 0.093 0.123 0.128 0.173 0.195 0.426 0.683 0.576 ... 4.550e-02
137 0.043 9.020e-02 0.083 0.081 0.017 0.028 0.057 0.206 0.389 0.711 ... 1.760e-02
138 0.073 1.249e-01 0.167 0.150 0.144 0.277 0.256 0.171 0.047 0.111 ... 4.440e-02
139 0.016 6.270e-02 0.074 0.061 0.023 0.105 0.134 0.064 0.152 0.078 ... 2.580e-02
140 0.041 1.135e-01 0.052 0.023 0.065 0.112 0.179 0.241 0.268 0.206 ... 3.760e-02
141 0.071 1.252e-01 0.145 0.164 0.169 0.084 0.071 0.095 0.158 0.125 ... 1.560e-02
142 0.053 5.630e-02 0.122 0.121 0.025 0.102 0.054 0.044 0.229 0.163 ... 3.390e-02
143 0.052 9.440e-02 0.062 0.042 0.100 0.243 0.178 0.202 0.261 0.129 ... 4.320e-02
144 0.030 6.880e-02 0.099 0.102 0.080 0.063 0.013 0.081 0.176 0.100 ... 4.590e-02
145 0.072 1.574e-01 0.111 0.108 0.067 0.180 0.111 0.279 0.141 0.080 ... 3.090e-02
146 0.102 8.300e-02 0.058 0.063 0.064 0.133 0.099 0.179 0.120 0.137 ... 7.090e-02
147 0.065 6.490e-02 0.074 0.113 0.248 0.126 0.180 0.099 0.246 0.342 ... 2.100e-02
148 0.071 9.010e-02 0.128 0.150 0.128 0.117 0.129 0.168 0.183 0.213 ... 1.540e-02
149 0.021 5.350e-02 0.033 0.082 0.074 0.032 0.092 0.107 0.155 0.123 ... 3.300e-03
150 0.021 2.780e-02 0.011 0.044 0.043 0.077 0.146 0.143 0.189 0.185 ... 9.600e-03
151 0.023 3.150e-02 0.017 0.023 0.041 0.012 0.022 0.081 0.236 0.246 ... 1.250e-02
152 0.013 2.010e-02 0.004 0.022 0.023 0.048 0.074 0.033 0.137 0.208 ... 1.680e-02
153 0.023 3.940e-02 0.042 0.055 0.099 0.151 0.167 0.151 0.172 0.208 ... 1.040e-02
154 0.012 6.900e-03 0.028 0.058 0.091 0.127 0.158 0.193 0.236 0.217 ... 5.300e-03
155 0.021 1.280e-02 0.002 0.045 0.071 0.156 0.152 0.121 0.167 0.135 ... 1.170e-02
156 0.005 5.900e-03 0.008 0.055 0.088 0.128 0.167 0.137 0.292 0.347 ... 9.500e-03
157 0.020 1.780e-02 0.027 0.023 0.072 0.083 0.123 0.130 0.208 0.272 ... 1.310e-02
158 0.011 4.530e-02 0.029 0.071 0.107 0.102 0.161 0.212 0.306 0.294 ... 1.640e-02
159 0.024 2.200e-02 0.017 0.052 0.075 0.112 0.126 0.172 0.307 0.320 ... 2.210e-02
160 0.026 4.330e-02 0.055 0.068 0.078 0.125 0.130 0.173 0.279 0.295 ... 9.100e-03
161 0.030 3.630e-02 0.021 0.023 0.046 0.067 0.094 0.097 0.254 0.313 ... 2.000e-02
162 0.022 1.520e-02 0.035 0.035 0.048 0.053 0.077 0.086 0.145 0.211 ... 1.230e-02
163 0.007 2.700e-03 0.009 0.006 0.042 0.086 0.118 0.100 0.198 0.232 ... 7.800e-03
164 0.016 1.980e-02 0.020 0.039 0.075 0.144 0.149 0.148 0.244 0.282 ... 7.700e-03
165 0.022 6.500e-03 0.016 0.049 0.052 0.085 0.081 0.183 0.223 0.181 ... 8.900e-03
166 0.041 2.770e-02 0.060 0.052 0.049 0.038 0.061 0.112 0.124 0.230 ... 2.170e-02
167 0.014 2.970e-02 0.012 0.008 0.024 0.025 0.028 0.013 0.049 0.087 ... 8.100e-03
168 0.002 1.860e-02 0.029 0.019 0.051 0.082 0.101 0.012 0.117 0.148 ... 1.080e-02
169 0.013 1.200e-02 0.044 0.062 0.043 0.035 0.038 0.045 0.132 0.138 ... 8.400e-03
170 0.013 1.720e-02 0.018 0.036 0.044 0.074 0.080 0.046 0.037 0.125 ... 9.400e-03
171 0.018 1.360e-02 0.041 0.063 0.060 0.081 0.209 0.346 0.528 0.597 ... 1.230e-02
172 0.018 4.440e-02 0.048 0.070 0.162 0.089 0.060 0.107 0.318 0.292 ... 1.220e-02
173 0.033 2.160e-02 0.039 0.063 0.116 0.148 0.205 0.161 0.253 0.267 ... 9.500e-03
174 0.019 1.730e-02 0.029 0.030 0.046 0.069 0.058 0.110 0.242 0.313 ... 4.000e-03
175 0.029 1.230e-02 0.012 0.011 0.050 0.100 0.133 0.112 0.298 0.347 ... 5.600e-03
176 0.064 7.090e-02 0.045 0.033 0.018 0.126 0.102 0.192 0.336 0.390 ... 4.800e-03
177 0.020 1.650e-02 0.034 0.033 0.040 0.044 0.068 0.090 0.174 0.257 ... 5.400e-03
178 0.020 3.940e-02 0.038 0.008 0.025 0.063 0.075 0.058 0.136 0.170 ... 1.340e-02
179 0.039 4.200e-02 0.045 0.055 0.060 0.142 0.096 0.080 0.162 0.256 ... 1.460e-02
180 0.031 2.210e-02 0.043 0.019 0.096 0.183 0.111 0.170 0.280 0.443 ... 2.040e-02
181 0.042 3.210e-02 0.071 0.011 0.107 0.097 0.096 0.132 0.246 0.270 ... 1.760e-02
182 0.009 3.080e-02 0.054 0.041 0.061 0.104 0.102 0.139 0.259 0.374 ... 1.810e-02
183 0.010 4.040e-02 0.068 0.069 0.089 0.093 0.096 0.214 0.255 0.295 ... 2.370e-02
184 0.027 3.830e-02 0.051 0.071 0.131 0.210 0.226 0.252 0.359 0.592 ... 1.670e-02
185 0.034 6.250e-02 0.038 0.026 0.044 0.103 0.129 0.185 0.265 0.412 ... 1.410e-02
186 0.021 1.910e-02 0.041 0.032 0.070 0.158 0.144 0.140 0.305 0.391 ... 7.800e-03
187 0.037 2.790e-02 0.010 0.057 0.076 0.068 0.097 0.147 0.216 0.254 ... 1.050e-02
188 0.009 2.740e-02 0.025 0.024 0.022 0.085 0.149 0.122 0.157 0.212 ... 9.600e-03
189 0.016 2.390e-02 0.015 0.049 0.099 0.142 0.146 0.122 0.170 0.192 ... 1.210e-02
190 0.016 2.100e-02 0.028 0.060 0.046 0.078 0.137 0.078 0.104 0.157 ... 1.500e-02
191 0.032 2.520e-02 0.017 0.048 0.090 0.106 0.102 0.121 0.124 0.153 ... 1.080e-02
192 0.006 2.670e-02 0.022 0.056 0.094 0.115 0.071 0.100 0.167 0.186 ... 7.200e-03
193 0.020 1.210e-02 0.038 0.013 0.054 0.087 0.102 0.085 0.114 0.175 ... 1.340e-02
194 0.039 1.080e-02 0.027 0.026 0.041 0.049 0.105 0.169 0.210 0.247 ... 8.300e-03
195 0.013 1.410e-02 0.031 0.037 0.077 0.079 0.066 0.111 0.178 0.225 ... 1.240e-02
196 0.005 1.700e-03 0.027 0.045 0.096 0.083 0.088 0.122 0.198 0.228 ... 1.650e-02
197 0.037 4.210e-02 0.050 0.025 0.060 0.025 0.096 0.099 0.142 0.185 ... 1.320e-02
198 0.024 3.180e-02 0.042 0.040 0.079 0.077 0.088 0.114 0.159 0.205 ... 9.600e-03
199 0.012 7.440e-02 0.037 0.022 0.008 0.054 0.111 0.107 0.171 0.227 ... 1.410e-02
200 0.013 3.870e-02 0.033 0.008 0.072 0.134 0.163 0.190 0.261 0.319 ... 1.500e-02
201 0.034 2.580e-02 0.040 0.057 0.053 0.109 0.171 0.168 0.186 0.266 ... 1.200e-02
202 0.027 3.780e-02 0.049 0.085 0.113 0.110 0.135 0.234 0.311 0.400 ... 9.100e-03
203 0.019 3.460e-02 0.017 0.018 0.039 0.163 0.203 0.169 0.233 0.268 ... 1.160e-02
204 0.032 1.010e-02 0.030 0.056 0.076 0.096 0.099 0.102 0.103 0.215 ... 6.100e-03
205 0.052 4.370e-02 0.018 0.029 0.035 0.117 0.126 0.118 0.126 0.253 ... 1.600e-02
206 0.030 3.530e-02 0.049 0.061 0.017 0.135 0.146 0.112 0.195 0.235 ... 8.600e-03
207 0.026 3.630e-02 0.014 0.027 0.021 0.034 0.066 0.140 0.184 0.235 ... 1.460e-02
52 53 54 55 56 57 58 59 60
0 6.500e-03 0.016 7.200e-03 1.670e-02 1.800e-02 8.400e-03 9.000e-03 3.200e-03 R
1 8.900e-03 0.005 9.400e-03 1.910e-02 1.400e-02 4.900e-03 5.200e-03 4.400e-03 R
2 1.660e-02 0.009 1.800e-02 2.440e-02 3.160e-02 1.640e-02 9.500e-03 7.800e-03 R
3 3.600e-03 0.015 8.500e-03 7.300e-03 5.000e-03 4.400e-03 4.000e-03 1.170e-02 R
4 5.400e-03 0.011 1.100e-02 1.500e-03 7.200e-03 4.800e-03 1.070e-02 9.400e-03 R
5 1.400e-03 0.004 1.300e-03 8.900e-03 5.700e-03 2.700e-03 5.100e-03 6.200e-03 R
6 2.480e-02 0.013 7.000e-03 1.380e-02 9.200e-03 1.430e-02 3.600e-03 1.030e-02 R
7 1.200e-02 0.004 1.210e-02 9.700e-03 8.500e-03 4.700e-03 4.800e-03 5.300e-03 R
8 1.280e-02 0.015 5.800e-03 4.900e-03 6.500e-03 9.300e-03 5.900e-03 2.200e-03 R
9 2.230e-02 0.018 8.400e-03 6.800e-03 3.200e-03 3.500e-03 5.600e-03 4.000e-03 R
10 1.200e-02 0.005 5.600e-03 9.300e-03 4.200e-03 3.000e-04 5.300e-03 3.600e-03 R
11 2.650e-02 0.022 7.400e-03 1.180e-02 2.600e-03 9.200e-03 9.000e-04 4.400e-03 R
12 1.270e-02 0.009 9.800e-03 1.900e-03 5.900e-03 5.800e-03 5.900e-03 3.200e-03 R
13 9.500e-03 0.019 8.000e-03 1.520e-02 1.580e-02 5.300e-03 1.890e-02 1.020e-02 R
14 5.700e-03 0.017 1.880e-02 5.400e-03 1.140e-02 1.960e-02 1.470e-02 6.200e-03 R
15 1.530e-02 0.007 2.120e-02 7.600e-03 1.520e-02 4.900e-03 2.000e-02 7.300e-03 R
16 1.580e-02 0.015 1.090e-02 4.800e-03 9.500e-03 1.500e-03 7.300e-03 6.700e-03 R
17 1.310e-02 0.012 1.080e-02 2.400e-03 4.500e-03 3.700e-03 1.120e-02 7.500e-03 R
18 1.000e-03 0.002 6.800e-03 3.900e-03 1.200e-02 1.320e-02 7.000e-03 8.800e-03 R
19 3.500e-03 0.010 1.210e-02 6.000e-04 1.810e-02 9.400e-03 1.160e-02 6.300e-03 R
20 1.180e-02 0.006 4.200e-03 5.400e-03 4.900e-03 8.200e-03 2.800e-03 2.700e-03 R
21 1.900e-02 0.004 3.600e-03 2.600e-03 2.400e-03 1.620e-02 1.090e-02 7.900e-03 R
22 1.490e-02 0.011 2.020e-02 1.390e-02 2.900e-03 1.600e-02 1.060e-02 1.340e-02 R
23 1.600e-03 0.008 6.400e-03 2.600e-03 2.900e-03 3.700e-03 7.000e-03 4.100e-03 R
24 5.200e-03 0.008 7.800e-03 7.500e-03 1.050e-02 1.600e-02 9.500e-03 1.100e-03 R
25 7.000e-03 0.006 3.000e-03 1.100e-03 7.000e-04 2.400e-03 5.700e-03 4.400e-03 R
26 1.500e-03 0.008 1.280e-02 5.400e-03 1.100e-03 1.900e-03 2.300e-03 6.200e-03 R
27 1.220e-02 0.004 7.500e-03 1.240e-02 9.900e-03 5.700e-03 3.200e-03 1.900e-03 R
28 1.040e-02 0.004 8.800e-03 4.700e-03 1.170e-02 2.000e-03 9.100e-03 5.800e-03 R
29 9.600e-03 0.014 1.900e-02 1.400e-02 9.900e-03 9.200e-03 5.200e-03 7.500e-03 R
30 1.460e-02 0.009 1.120e-02 9.400e-03 5.400e-03 1.900e-03 6.600e-03 2.300e-03 R
31 1.140e-02 0.014 1.170e-02 6.000e-03 5.800e-03 3.100e-03 7.200e-03 4.500e-03 R
32 7.400e-03 0.027 2.030e-02 8.900e-03 9.500e-03 9.500e-03 2.100e-03 5.300e-03 R
33 2.160e-02 0.013 5.500e-03 7.300e-03 8.000e-03 1.050e-02 5.900e-03 1.050e-02 R
34 3.200e-03 0.013 1.880e-02 1.010e-02 2.290e-02 1.820e-02 4.600e-03 3.800e-03 R
35 1.470e-02 0.002 1.000e-02 9.600e-03 7.700e-03 1.800e-02 1.090e-02 7.000e-03 R
36 1.910e-02 0.015 6.500e-03 1.290e-02 2.170e-02 8.700e-03 7.700e-03 1.220e-02 R
37 3.200e-03 0.006 5.400e-03 6.300e-03 1.430e-02 1.320e-02 5.100e-03 4.100e-03 R
38 1.340e-02 0.003 3.800e-03 1.800e-03 1.130e-02 5.800e-03 4.700e-03 7.100e-03 R
39 1.120e-02 0.010 2.600e-03 9.700e-03 9.800e-03 4.300e-03 7.100e-03 1.080e-02 R
40 1.630e-02 0.005 4.500e-03 6.800e-03 4.100e-03 5.200e-03 1.940e-02 1.050e-02 R
41 6.400e-03 0.013 1.140e-02 5.400e-03 8.900e-03 5.000e-03 5.800e-03 2.500e-03 R
42 4.200e-03 0.015 1.060e-02 2.000e-03 1.050e-02 4.900e-03 7.000e-03 8.000e-03 R
43 9.100e-03 0.006 8.600e-03 9.200e-03 7.000e-03 1.160e-02 6.000e-03 1.100e-02 R
44 1.530e-02 0.010 1.310e-02 1.980e-02 2.500e-03 1.990e-02 2.550e-02 1.800e-02 R
45 1.290e-02 0.018 6.900e-03 1.980e-02 1.990e-02 1.020e-02 7.000e-03 5.500e-03 R
46 1.270e-02 0.014 9.000e-03 5.100e-03 2.900e-03 1.220e-02 5.600e-03 2.000e-03 R
47 4.500e-03 0.002 6.000e-04 7.300e-03 9.600e-03 5.400e-03 8.500e-03 6.000e-03 R
48 1.180e-02 0.011 9.400e-03 1.400e-02 7.200e-03 2.200e-03 5.500e-03 1.220e-02 R
49 1.030e-02 0.007 1.230e-02 6.900e-03 7.600e-03 7.300e-03 3.000e-03 1.380e-02 R
50 2.420e-02 0.004 2.020e-02 1.080e-02 3.700e-03 9.600e-03 9.300e-03 5.300e-03 R
51 2.800e-03 0.004 7.500e-03 3.900e-03 5.300e-03 1.300e-03 5.200e-03 2.300e-03 R
52 3.800e-03 0.008 1.140e-02 5.000e-03 3.000e-03 6.400e-03 5.800e-03 3.000e-03 R
53 7.200e-03 0.011 5.100e-03 1.020e-02 4.100e-03 5.500e-03 5.000e-03 8.700e-03 R
54 2.800e-03 0.002 2.200e-03 4.800e-03 1.380e-02 1.400e-02 2.800e-03 6.400e-03 R
55 4.500e-03 0.006 7.500e-03 3.700e-03 4.500e-03 2.900e-03 8.000e-04 1.800e-03 R
56 4.100e-03 0.004 1.300e-03 4.600e-03 3.700e-03 1.100e-03 3.400e-03 3.300e-03 R
57 4.900e-03 0.010 1.340e-02 1.220e-02 4.700e-03 1.800e-03 6.000e-04 2.300e-03 R
58 1.290e-02 0.010 4.400e-03 5.700e-03 3.000e-03 3.500e-03 2.100e-03 2.700e-03 R
59 7.400e-03 0.003 5.000e-03 4.800e-03 1.700e-03 4.100e-03 8.600e-03 5.800e-03 R
60 4.100e-03 0.001 1.100e-03 4.500e-03 3.900e-03 2.200e-03 2.300e-03 1.600e-03 R
61 8.400e-03 0.010 9.600e-03 2.400e-03 3.700e-03 2.800e-03 3.000e-03 3.000e-03 R
62 5.400e-03 0.002 1.600e-03 2.900e-03 5.800e-03 5.000e-03 2.400e-03 3.000e-03 R
63 2.300e-03 0.002 4.000e-03 1.900e-03 3.400e-03 3.400e-03 5.100e-03 3.100e-03 R
64 4.800e-03 0.008 1.240e-02 1.050e-02 5.400e-03 3.200e-03 7.300e-03 6.300e-03 R
65 1.750e-02 0.017 7.900e-03 5.000e-03 1.120e-02 1.790e-02 2.940e-02 6.300e-03 R
66 1.870e-02 0.016 6.800e-03 9.700e-03 7.300e-03 8.100e-03 8.600e-03 9.500e-03 R
67 1.600e-02 0.016 8.100e-03 7.000e-03 1.350e-02 6.700e-03 7.800e-03 6.800e-03 R
68 6.700e-03 0.012 1.200e-03 2.200e-03 5.800e-03 4.200e-03 6.700e-03 1.200e-03 R
69 4.400e-03 0.005 7.300e-03 2.100e-03 4.700e-03 2.400e-03 9.000e-04 1.700e-03 R
70 2.500e-03 0.003 5.200e-03 3.600e-03 2.600e-03 3.600e-03 6.000e-04 3.500e-03 R
71 5.500e-03 0.004 3.600e-03 4.000e-04 1.800e-03 4.900e-03 2.400e-03 1.600e-03 R
72 6.300e-03 0.008 8.700e-03 4.400e-03 2.800e-03 1.900e-03 4.900e-03 2.300e-03 R
73 7.200e-03 0.011 1.200e-03 2.200e-03 2.500e-03 5.900e-03 3.900e-03 4.800e-03 R
74 2.300e-03 0.012 5.300e-03 7.700e-03 7.600e-03 5.600e-03 5.500e-03 3.900e-03 R
75 8.100e-03 0.007 4.300e-03 6.500e-03 4.900e-03 5.400e-03 7.300e-03 5.400e-03 R
76 1.510e-02 0.008 1.800e-03 7.800e-03 4.500e-03 2.600e-03 3.600e-03 2.400e-03 R
77 1.110e-02 0.003 3.500e-03 1.690e-02 1.370e-02 1.500e-03 6.900e-03 5.100e-03 R
78 9.700e-03 0.002 5.200e-03 7.200e-03 5.600e-03 3.800e-03 4.300e-03 3.000e-03 R
79 7.800e-03 0.011 8.300e-03 5.800e-03 3.000e-04 2.300e-03 2.600e-03 2.700e-03 R
80 2.200e-03 0.012 1.510e-02 5.600e-03 2.600e-03 2.900e-03 1.040e-02 1.630e-02 R
81 7.300e-03 0.008 7.500e-03 6.000e-03 8.000e-03 1.900e-03 5.300e-03 1.900e-03 R
82 3.600e-03 0.011 1.200e-02 8.700e-03 6.100e-03 6.100e-03 3.000e-03 7.800e-03 R
83 1.030e-02 0.008 7.700e-03 9.400e-03 3.100e-03 3.000e-03 1.300e-03 6.900e-03 R
84 4.400e-03 0.008 1.020e-02 6.500e-03 6.100e-03 6.200e-03 4.300e-03 5.300e-03 R
85 7.100e-03 0.021 1.640e-02 6.300e-03 7.800e-03 9.400e-03 1.100e-02 6.800e-03 R
86 3.300e-03 0.011 3.000e-03 5.700e-03 9.000e-03 5.700e-03 6.800e-03 2.400e-03 R
87 1.380e-02 0.008 3.700e-03 5.100e-03 2.580e-02 1.020e-02 3.700e-03 3.700e-03 R
88 1.080e-02 0.009 4.700e-03 7.400e-03 1.040e-02 1.610e-02 2.200e-02 1.730e-02 R
89 3.700e-03 0.009 1.050e-02 3.000e-03 1.320e-02 6.800e-03 1.080e-02 9.000e-03 R
90 4.800e-03 0.020 1.260e-02 2.200e-03 3.700e-03 3.400e-03 1.140e-02 7.700e-03 R
91 7.300e-03 0.008 3.800e-03 1.160e-02 3.300e-03 3.900e-03 8.100e-03 5.300e-03 R
92 1.200e-02 0.005 7.000e-03 1.500e-03 3.500e-03 8.000e-04 4.400e-03 7.700e-03 R
93 3.200e-03 0.011 1.640e-02 1.510e-02 7.000e-03 8.500e-03 1.170e-02 5.600e-03 R
94 7.700e-03 0.004 1.140e-02 8.500e-03 1.010e-02 1.600e-03 2.800e-03 1.400e-03 R
95 2.370e-02 0.020 5.000e-03 1.370e-02 1.640e-02 8.100e-03 1.390e-02 1.110e-02 R
96 2.550e-02 0.015 2.330e-02 4.100e-03 1.800e-03 4.800e-03 8.900e-03 8.500e-03 R
97 1.290e-02 0.016 6.300e-03 1.190e-02 1.940e-02 1.400e-02 3.320e-02 4.390e-02 M
98 2.100e-02 0.015 1.800e-02 1.300e-03 1.060e-02 1.270e-02 1.780e-02 2.310e-02 M
99 1.820e-02 0.016 2.900e-02 9.000e-03 2.420e-02 2.240e-02 1.900e-02 9.600e-03 M
100 2.620e-02 0.011 1.380e-02 1.870e-02 2.300e-02 5.700e-03 1.130e-02 1.310e-02 M
101 2.320e-02 0.009 1.590e-02 1.930e-02 3.200e-03 3.770e-02 1.260e-02 1.560e-02 M
102 1.110e-02 0.009 1.580e-02 1.220e-02 3.800e-03 1.010e-02 2.280e-02 1.240e-02 M
103 8.200e-03 0.023 1.980e-02 7.400e-03 3.500e-03 1.000e-02 4.800e-03 1.900e-03 M
104 1.890e-02 0.014 2.770e-02 1.520e-02 5.200e-03 1.210e-02 1.240e-02 5.500e-03 M
105 9.900e-03 0.008 2.700e-02 2.770e-02 9.700e-03 5.400e-03 1.480e-02 9.200e-03 M
106 1.740e-02 0.018 3.800e-03 1.290e-02 6.600e-03 4.400e-03 1.340e-02 9.200e-03 M
107 1.790e-02 0.008 6.000e-03 1.310e-02 8.900e-03 8.400e-03 1.130e-02 4.900e-03 M
108 5.000e-04 0.023 2.090e-02 8.100e-03 1.170e-02 1.140e-02 1.120e-02 1.000e-02 M
109 2.620e-02 0.018 3.700e-03 6.800e-03 1.210e-02 7.700e-03 7.800e-03 6.600e-03 M
110 1.010e-02 0.006 3.100e-03 9.900e-03 8.000e-03 1.070e-02 1.610e-02 1.330e-02 M
111 1.990e-02 0.026 8.200e-03 1.510e-02 1.710e-02 1.460e-02 1.340e-02 5.600e-03 M
112 4.200e-03 0.024 1.290e-02 8.400e-03 2.180e-02 3.210e-02 1.540e-02 5.300e-03 M
113 1.700e-02 0.016 4.600e-03 7.300e-03 5.400e-03 3.300e-03 4.500e-03 7.900e-03 M
114 1.520e-02 0.026 9.700e-03 4.100e-03 5.000e-03 1.450e-02 1.030e-02 2.500e-03 M
115 1.360e-02 0.011 5.300e-03 1.650e-02 1.410e-02 7.700e-03 2.460e-02 1.980e-02 M
116 1.120e-02 0.024 1.640e-02 5.500e-03 7.800e-03 5.500e-03 9.100e-03 6.700e-03 M
117 1.780e-02 0.008 7.400e-03 9.500e-03 5.500e-03 4.500e-03 6.300e-03 3.900e-03 M
118 1.900e-02 0.005 9.600e-03 5.000e-03 6.600e-03 1.140e-02 7.300e-03 3.300e-03 M
119 1.750e-02 0.013 2.200e-03 1.240e-02 5.400e-03 2.100e-03 2.800e-03 2.300e-03 M
120 1.220e-02 0.011 1.120e-02 1.020e-02 5.200e-03 2.400e-03 7.900e-03 3.100e-03 M
121 1.350e-02 0.011 6.200e-03 1.570e-02 8.800e-03 3.600e-03 5.300e-03 3.000e-03 M
122 6.800e-03 0.015 1.200e-03 1.330e-02 4.800e-03 2.440e-02 7.700e-03 7.400e-03 M
123 2.040e-02 0.009 4.300e-03 9.200e-03 1.380e-02 9.400e-03 1.050e-02 9.300e-03 M
124 7.100e-03 0.026 7.900e-03 1.110e-02 1.070e-02 6.800e-03 9.700e-03 6.700e-03 M
125 1.910e-02 0.026 1.400e-02 1.250e-02 1.160e-02 9.300e-03 1.200e-03 3.600e-03 M
126 1.210e-02 0.010 1.960e-02 4.200e-03 6.600e-03 9.900e-03 8.300e-03 1.240e-02 M
127 1.590e-02 0.009 3.720e-02 1.010e-02 1.270e-02 2.880e-02 1.290e-02 2.300e-03 M
128 6.300e-03 0.024 3.200e-03 8.700e-03 1.240e-02 1.130e-02 9.800e-03 1.260e-02 M
129 1.290e-02 0.034 6.500e-03 6.700e-03 2.200e-03 7.900e-03 1.460e-02 5.100e-03 M
130 2.050e-02 0.014 1.850e-02 5.500e-03 4.500e-03 1.150e-02 1.520e-02 1.000e-02 M
131 6.500e-03 0.009 1.660e-02 1.100e-02 1.900e-02 1.410e-02 6.800e-03 8.600e-03 M
132 8.100e-03 0.030 1.900e-02 2.120e-02 1.260e-02 2.010e-02 2.100e-02 4.100e-03 M
133 3.900e-02 0.029 1.750e-02 2.490e-02 1.410e-02 7.300e-03 2.500e-03 1.010e-02 M
134 1.100e-02 0.023 2.760e-02 3.200e-03 8.400e-03 1.220e-02 8.200e-03 1.430e-02 M
135 1.750e-02 0.035 1.580e-02 3.260e-02 2.010e-02 1.680e-02 2.450e-02 1.540e-02 M
136 2.130e-02 0.008 1.240e-02 1.670e-02 1.030e-02 2.050e-02 1.780e-02 1.870e-02 M
137 1.970e-02 0.021 1.410e-02 4.900e-03 2.700e-03 1.620e-02 5.900e-03 2.100e-03 M
138 2.300e-02 0.029 1.410e-02 1.610e-02 1.770e-02 1.940e-02 2.070e-02 5.700e-03 M
139 1.430e-02 0.023 1.870e-02 1.850e-02 1.100e-02 9.400e-03 7.800e-03 1.120e-02 M
140 1.430e-02 0.027 1.270e-02 1.660e-02 9.500e-03 2.250e-02 9.800e-03 8.500e-03 M
141 1.970e-02 0.013 1.270e-02 1.380e-02 1.330e-02 1.310e-02 1.540e-02 2.180e-02 M
142 1.490e-02 0.034 3.760e-02 1.740e-02 1.320e-02 1.030e-02 3.640e-02 2.080e-02 M
143 2.740e-02 0.015 1.200e-02 1.290e-02 2.000e-03 1.090e-02 7.400e-03 7.800e-03 M
144 2.770e-02 0.017 8.700e-03 4.600e-03 2.030e-02 1.300e-02 1.150e-02 1.500e-03 M
145 1.270e-02 0.008 2.810e-02 1.170e-02 9.200e-03 1.470e-02 1.570e-02 1.290e-02 M
146 3.170e-02 0.031 2.520e-02 8.700e-03 1.770e-02 2.140e-02 2.270e-02 1.060e-02 M
147 3.610e-02 0.024 4.470e-02 3.940e-02 3.550e-02 4.400e-02 2.430e-02 9.800e-03 M
148 1.560e-02 0.005 3.000e-03 4.800e-03 8.700e-03 1.010e-02 9.500e-03 6.800e-03 M
149 5.000e-03 0.019 1.030e-02 1.210e-02 4.200e-03 9.000e-03 7.000e-03 9.900e-03 M
150 1.400e-03 0.005 3.900e-03 2.900e-03 7.800e-03 4.700e-03 2.100e-03 1.100e-03 M
151 3.600e-03 0.012 4.300e-03 1.140e-02 5.200e-03 9.100e-03 8.000e-04 9.200e-03 M
152 8.600e-03 0.004 6.200e-03 6.500e-03 3.000e-03 6.600e-03 2.900e-03 5.300e-03 M
153 6.200e-03 0.003 2.500e-03 6.100e-03 3.800e-03 1.010e-02 7.800e-03 6.000e-04 M
154 2.900e-03 0.002 1.300e-03 2.900e-03 2.000e-03 6.200e-03 2.600e-03 5.200e-03 M
155 2.300e-03 0.005 4.900e-03 3.100e-03 2.400e-03 3.900e-03 5.100e-03 1.500e-03 M
156 1.260e-02 0.007 3.900e-03 6.800e-03 6.000e-03 4.500e-03 2.000e-04 2.900e-03 M
157 4.900e-03 0.010 1.020e-02 9.200e-03 8.300e-03 2.000e-03 4.800e-03 3.600e-03 M
158 1.200e-02 0.011 2.100e-03 9.700e-03 7.200e-03 6.000e-03 1.700e-03 3.600e-03 M
159 1.520e-02 0.008 5.800e-03 2.300e-03 5.700e-03 5.200e-03 2.700e-03 2.100e-03 M
160 6.200e-03 0.002 4.500e-03 7.900e-03 3.100e-03 6.300e-03 4.800e-03 5.000e-03 M
161 7.000e-03 0.007 8.600e-03 8.900e-03 7.400e-03 4.200e-03 5.500e-03 2.100e-03 M
162 6.700e-03 0.001 2.600e-03 4.900e-03 2.900e-03 2.200e-03 2.200e-03 3.200e-03 M
163 7.100e-03 0.008 3.400e-03 6.400e-03 3.700e-03 3.600e-03 1.200e-03 3.700e-03 M
164 2.600e-03 0.003 8.300e-03 2.000e-03 8.400e-03 1.080e-02 8.300e-03 3.300e-03 M
165 5.100e-03 0.002 7.500e-03 5.800e-03 1.600e-03 7.000e-03 7.400e-03 3.800e-03 M
166 3.800e-03 0.002 6.500e-03 1.320e-02 1.080e-02 5.000e-03 8.500e-03 4.400e-03 M
167 4.000e-03 0.003 3.600e-03 5.800e-03 6.700e-03 3.500e-03 4.300e-03 3.300e-03 M
168 7.500e-03 0.009 3.600e-03 2.900e-03 1.300e-03 1.000e-03 3.200e-03 4.700e-03 M
169 1.000e-02 0.002 3.500e-03 5.800e-03 1.100e-03 9.000e-04 3.300e-03 2.600e-03 M
170 4.800e-03 0.005 1.600e-03 8.000e-04 4.200e-03 2.400e-03 2.700e-03 4.100e-03 M
171 6.000e-03 0.019 1.110e-02 1.260e-02 8.100e-03 1.550e-02 1.600e-02 8.500e-03 M
172 1.140e-02 0.010 2.700e-03 2.500e-03 2.600e-03 5.000e-03 7.300e-03 2.200e-03 M
173 1.510e-02 0.006 1.500e-03 5.300e-03 1.600e-03 4.200e-03 5.300e-03 7.400e-03 M
174 1.360e-02 0.014 1.720e-02 1.320e-02 1.100e-02 1.220e-02 1.140e-02 6.800e-03 M
175 1.040e-02 0.008 1.400e-03 5.400e-03 1.500e-03 6.000e-04 8.100e-03 4.300e-03 M
176 2.500e-03 0.009 7.200e-03 9.500e-03 8.600e-03 8.500e-03 4.000e-03 5.100e-03 M
177 5.700e-03 0.014 1.090e-02 3.500e-03 5.600e-03 1.050e-02 8.200e-03 3.600e-03 M
178 9.700e-03 0.004 5.800e-03 7.200e-03 4.100e-03 4.500e-03 4.700e-03 5.400e-03 M
179 4.000e-03 0.011 3.200e-03 6.200e-03 1.010e-02 6.800e-03 5.300e-03 8.700e-03 M
180 5.900e-03 0.005 7.900e-03 3.700e-03 1.500e-03 5.600e-03 6.700e-03 5.400e-03 M
181 3.500e-03 0.009 1.210e-02 7.500e-03 5.600e-03 2.100e-03 4.300e-03 1.700e-03 M
182 1.900e-03 0.010 1.330e-02 4.000e-03 4.200e-03 3.000e-03 3.100e-03 3.300e-03 M
183 7.800e-03 0.014 1.700e-02 1.200e-03 1.090e-02 3.600e-03 4.300e-03 1.800e-03 M
184 1.990e-02 0.015 8.100e-03 4.500e-03 4.300e-03 2.700e-03 5.500e-03 5.700e-03 M
185 1.900e-03 0.007 9.900e-03 4.200e-03 5.700e-03 5.100e-03 3.300e-03 5.800e-03 M
186 2.010e-02 0.010 3.900e-03 3.100e-03 6.200e-03 8.700e-03 7.000e-03 4.200e-03 M
187 2.400e-03 0.002 5.700e-03 9.200e-03 9.000e-04 8.600e-03 1.100e-02 5.200e-03 M
188 1.030e-02 0.009 2.500e-03 4.400e-03 2.100e-03 6.900e-03 6.000e-03 1.800e-03 M
189 1.080e-02 0.006 2.800e-03 7.900e-03 3.400e-03 4.600e-03 2.200e-03 2.100e-03 M
190 6.000e-03 0.008 9.100e-03 3.800e-03 5.600e-03 5.600e-03 4.800e-03 2.400e-03 M
191 6.200e-03 0.004 7.200e-03 7.000e-04 5.400e-03 3.500e-03 1.000e-04 5.500e-03 M
192 5.500e-03 0.007 6.800e-03 8.400e-03 3.700e-03 2.400e-03 3.400e-03 7.000e-04 M
193 9.400e-03 0.005 4.500e-03 4.200e-03 2.800e-03 3.600e-03 1.300e-03 1.600e-03 M
194 8.000e-03 0.003 7.900e-03 4.200e-03 7.100e-03 4.400e-03 2.200e-03 1.400e-03 M
195 9.300e-03 0.007 1.900e-03 2.700e-03 5.400e-03 1.700e-03 2.400e-03 2.900e-03 M
196 5.600e-03 0.001 2.700e-03 6.200e-03 2.400e-03 6.300e-03 1.700e-03 2.800e-03 M
197 2.700e-03 0.002 5.900e-03 1.600e-03 2.500e-03 1.700e-03 2.700e-03 2.700e-03 M
198 7.100e-03 0.008 3.800e-03 2.600e-03 2.800e-03 1.300e-03 3.500e-03 6.000e-03 M
199 1.030e-02 0.010 3.400e-03 2.600e-03 3.700e-03 4.400e-03 5.700e-03 3.500e-03 M
200 7.600e-03 0.003 3.700e-03 7.100e-03 4.000e-03 9.000e-04 1.500e-03 8.500e-03 M
201 3.900e-03 0.005 6.200e-03 4.600e-03 4.500e-03 2.200e-03 5.000e-04 3.100e-03 M
202 4.500e-03 0.004 4.300e-03 9.800e-03 5.400e-03 5.100e-03 6.500e-03 1.030e-02 M
203 9.800e-03 0.020 3.300e-03 1.010e-02 6.500e-03 1.150e-02 1.930e-02 1.570e-02 M
204 9.300e-03 0.013 6.300e-03 6.300e-03 3.400e-03 3.200e-03 6.200e-03 6.700e-03 M
205 2.900e-03 0.005 6.200e-03 8.900e-03 1.400e-02 1.380e-02 7.700e-03 3.100e-03 M
206 4.600e-03 0.013 3.600e-03 3.500e-03 3.400e-03 7.900e-03 3.600e-03 4.800e-03 M
207 1.290e-02 0.005 3.900e-03 6.100e-03 4.000e-03 3.600e-03 6.100e-03 1.150e-02 M
[208 rows x 61 columns]
from pandas import set_option
from matplotlib import pyplot
# 数据维度
print('1.数据维度')
print(dataset.shape)
# 查看数据类型
# set_option('display.max_rows', 500)
print("2.数据类型")
print(dataset.dtypes)
# 查看最初的20条记录
# set_option('display.width', 100)
print("3.查看前20条记录")
print(dataset.head(20))
# 描述性统计信息
# set_option('precision', 3)
print("4.查看统计信息(每个字段的反馈:总数,均值,标准差,最小值,上四分位数,中位数,下四分位数,最大值)")
print(dataset.describe())
# 数据的分类分布
print(dataset.groupby(60).size())
1.数据维度
(208, 61)
2.数据类型
0 float64
1 float64
2 float64
3 float64
4 float64
5 float64
6 float64
7 float64
8 float64
9 float64
10 float64
11 float64
12 float64
13 float64
14 float64
15 float64
16 float64
17 float64
18 float64
19 float64
20 float64
21 float64
22 float64
23 float64
24 float64
25 float64
26 float64
27 float64
28 float64
29 float64
30 float64
31 float64
32 float64
33 float64
34 float64
35 float64
36 float64
37 float64
38 float64
39 float64
40 float64
41 float64
42 float64
43 float64
44 float64
45 float64
46 float64
47 float64
48 float64
49 float64
50 float64
51 float64
52 float64
53 float64
54 float64
55 float64
56 float64
57 float64
58 float64
59 float64
60 object
dtype: object
3.查看前20条记录
0 1 2 3 4 5 6 7 8 9 ... 51 52 \
0 0.020 0.037 0.043 0.021 0.095 0.099 0.154 0.160 0.311 0.211 ... 0.003 0.006
1 0.045 0.052 0.084 0.069 0.118 0.258 0.216 0.348 0.334 0.287 ... 0.008 0.009
2 0.026 0.058 0.110 0.108 0.097 0.228 0.243 0.377 0.560 0.619 ... 0.023 0.017
3 0.010 0.017 0.062 0.021 0.021 0.037 0.110 0.128 0.060 0.126 ... 0.012 0.004
4 0.076 0.067 0.048 0.039 0.059 0.065 0.121 0.247 0.356 0.446 ... 0.003 0.005
5 0.029 0.045 0.028 0.017 0.038 0.099 0.120 0.183 0.210 0.304 ... 0.004 0.001
6 0.032 0.096 0.132 0.141 0.167 0.171 0.073 0.140 0.208 0.351 ... 0.020 0.025
7 0.052 0.055 0.084 0.032 0.116 0.092 0.103 0.061 0.146 0.284 ... 0.008 0.012
8 0.022 0.037 0.048 0.048 0.065 0.059 0.075 0.010 0.068 0.149 ... 0.015 0.013
9 0.016 0.017 0.035 0.007 0.019 0.067 0.106 0.070 0.096 0.025 ... 0.009 0.022
10 0.004 0.006 0.015 0.034 0.031 0.028 0.040 0.027 0.032 0.045 ... 0.006 0.012
11 0.012 0.031 0.017 0.031 0.036 0.010 0.018 0.058 0.112 0.084 ... 0.013 0.026
12 0.008 0.009 0.005 0.025 0.034 0.055 0.053 0.096 0.101 0.124 ... 0.018 0.013
13 0.009 0.006 0.025 0.049 0.120 0.159 0.139 0.099 0.096 0.190 ... 0.006 0.009
14 0.012 0.043 0.060 0.045 0.060 0.035 0.053 0.034 0.105 0.212 ... 0.008 0.006
15 0.030 0.061 0.065 0.092 0.162 0.229 0.218 0.203 0.146 0.085 ... 0.003 0.015
16 0.035 0.012 0.019 0.047 0.074 0.118 0.168 0.154 0.147 0.291 ... 0.035 0.016
17 0.019 0.061 0.038 0.077 0.139 0.081 0.057 0.022 0.104 0.119 ... 0.033 0.013
18 0.027 0.009 0.015 0.028 0.041 0.076 0.103 0.114 0.079 0.152 ... 0.008 0.001
19 0.013 0.015 0.064 0.173 0.257 0.256 0.295 0.411 0.498 0.592 ... 0.009 0.004
53 54 55 56 57 58 59 60
0 0.016 0.007 1.670e-02 0.018 8.400e-03 9.000e-03 0.003 R
1 0.005 0.009 1.910e-02 0.014 4.900e-03 5.200e-03 0.004 R
2 0.009 0.018 2.440e-02 0.032 1.640e-02 9.500e-03 0.008 R
3 0.015 0.009 7.300e-03 0.005 4.400e-03 4.000e-03 0.012 R
4 0.011 0.011 1.500e-03 0.007 4.800e-03 1.070e-02 0.009 R
5 0.004 0.001 8.900e-03 0.006 2.700e-03 5.100e-03 0.006 R
6 0.013 0.007 1.380e-02 0.009 1.430e-02 3.600e-03 0.010 R
7 0.004 0.012 9.700e-03 0.009 4.700e-03 4.800e-03 0.005 R
8 0.015 0.006 4.900e-03 0.006 9.300e-03 5.900e-03 0.002 R
9 0.018 0.008 6.800e-03 0.003 3.500e-03 5.600e-03 0.004 R
10 0.005 0.006 9.300e-03 0.004 3.000e-04 5.300e-03 0.004 R
11 0.022 0.007 1.180e-02 0.003 9.200e-03 9.000e-04 0.004 R
12 0.009 0.010 1.900e-03 0.006 5.800e-03 5.900e-03 0.003 R
13 0.019 0.008 1.520e-02 0.016 5.300e-03 1.890e-02 0.010 R
14 0.017 0.019 5.400e-03 0.011 1.960e-02 1.470e-02 0.006 R
15 0.007 0.021 7.600e-03 0.015 4.900e-03 2.000e-02 0.007 R
16 0.015 0.011 4.800e-03 0.009 1.500e-03 7.300e-03 0.007 R
17 0.012 0.011 2.400e-03 0.004 3.700e-03 1.120e-02 0.007 R
18 0.002 0.007 3.900e-03 0.012 1.320e-02 7.000e-03 0.009 R
19 0.010 0.012 6.000e-04 0.018 9.400e-03 1.160e-02 0.006 R
[20 rows x 61 columns]
4.查看统计信息
0 1 2 3 4 5 6 7 8 9 \
count 208.000 2.080e+02 208.000 208.000 208.000 208.000 208.000 208.000 208.000 208.000
mean 0.029 3.844e-02 0.044 0.054 0.075 0.105 0.122 0.135 0.178 0.208
std 0.023 3.296e-02 0.038 0.047 0.056 0.059 0.062 0.085 0.118 0.134
min 0.002 6.000e-04 0.002 0.006 0.007 0.010 0.003 0.005 0.007 0.011
25% 0.013 1.645e-02 0.019 0.024 0.038 0.067 0.081 0.080 0.097 0.111
50% 0.023 3.080e-02 0.034 0.044 0.062 0.092 0.107 0.112 0.152 0.182
75% 0.036 4.795e-02 0.058 0.065 0.100 0.134 0.154 0.170 0.233 0.269
max 0.137 2.339e-01 0.306 0.426 0.401 0.382 0.373 0.459 0.683 0.711
... 50 51 52 53 54 55 56 57 \
count ... 208.000 2.080e+02 2.080e+02 208.000 2.080e+02 2.080e+02 2.080e+02 2.080e+02
mean ... 0.016 1.342e-02 1.071e-02 0.011 9.290e-03 8.222e-03 7.820e-03 7.949e-03
std ... 0.012 9.634e-03 7.060e-03 0.007 7.088e-03 5.736e-03 5.785e-03 6.470e-03
min ... 0.000 8.000e-04 5.000e-04 0.001 6.000e-04 4.000e-04 3.000e-04 3.000e-04
25% ... 0.008 7.275e-03 5.075e-03 0.005 4.150e-03 4.400e-03 3.700e-03 3.600e-03
50% ... 0.014 1.140e-02 9.550e-03 0.009 7.500e-03 6.850e-03 5.950e-03 5.800e-03
75% ... 0.021 1.673e-02 1.490e-02 0.015 1.210e-02 1.058e-02 1.043e-02 1.035e-02
max ... 0.100 7.090e-02 3.900e-02 0.035 4.470e-02 3.940e-02 3.550e-02 4.400e-02
58 59
count 2.080e+02 2.080e+02
mean 7.941e-03 6.507e-03
std 6.181e-03 5.031e-03
min 1.000e-04 6.000e-04
25% 3.675e-03 3.100e-03
50% 6.400e-03 5.300e-03
75% 1.033e-02 8.525e-03
max 3.640e-02 4.390e-02
[8 rows x 60 columns]
60
M 111
R 97
dtype: int64
# 看数据之间的联系
# 直方图
dataset.hist(sharex=False, sharey=False,xlabelsize=1, ylabelsize=1)
pyplot.suptitle("属性直方图")
pyplot.show()
# 密度图
dataset.plot(kind='density', subplots=True, layout=(8,8), sharex=False, legend=False, fontsize=1)
pyplot.suptitle("属性密度图")
pyplot.show()
# 关系矩阵图
fig = pyplot.figure()
fig.suptitle('关系矩阵图')
ax = fig.add_subplot(111)
cax = ax.matshow(dataset.corr(), vmin=-1, vmax=1, interpolation='none')
fig.colorbar(cax)
pyplot.show()
from sklearn.model_selection import train_test_split
# 分离评估数据集
#dataset是pandans读的一个东西,是pandas里的dataframe类型,此步做一个格式类型的转化,array类型是Numpy类型
array = dataset.values
X = array[:, 0:60].astype(float)
Y = array[:, 60]
#最后一行test_size,取25%的数据进行一个测试
validation_size = 0.25
seed = 7 # 取一个固定的随机数种子,这样不会因为随机数的不同导致的数据的好坏而影响结果
X_train, X_validation, Y_train, Y_validation = train_test_split(X, Y, test_size=validation_size, random_state=seed)
#random_state取一个值生成随机数,通过随机算法,不按照原有数据顺序对数据进行75%的取样
#引入部分
#导入算法
from sklearn.linear_model import LogisticRegression
from sklearn.neighbors import KNeighborsClassifier
from sklearn.tree import DecisionTreeClassifier
from sklearn.discriminant_analysis import LinearDiscriminantAnalysis
from sklearn.naive_bayes import GaussianNB
from sklearn.svm import SVC
#做交叉验证
from sklearn.model_selection import KFold
#评分
from sklearn.model_selection import cross_val_score
#评分标准
scoring = 'accuracy'
#交叉验证折数
num_folds = 10
# 评估算法的基准
seed = 7
#构建模型字典
# 评估算法:使用原始数据 - 原始数据
models = {}
models['LR'] = LogisticRegression()#逻辑回归
models['LDA'] = LinearDiscriminantAnalysis()#线性判别分析
models['KNN'] = KNeighborsClassifier()#K近邻
models['CART'] = DecisionTreeClassifier()#分类与回归树
models['NB'] = GaussianNB()#朴素贝叶斯
models['SVM'] = SVC()#支持向量机
#把结果写进列表里
results = []
for key in models:
kfold = KFold(n_splits=num_folds, random_state=seed)
cv_results = cross_val_score(models[key], X_train, Y_train, cv=kfold, scoring=scoring)#训练的数据,结果,标准,构造模型
results.append(cv_results)
print('%s : %f (%f)' % (key, cv_results.mean(), cv_results.std()))#返回结果的均值和标准差,比如 LR : 0.749167 (0.081048)
#意思是准确率74.91%
print('明细结果:')
print(results)
LR : 0.749167 (0.081048)
LDA : 0.782083 (0.094594)
KNN : 0.815000 (0.091973)
CART : 0.744583 (0.136461)
NB : 0.652083 (0.177641)
SVM : 0.774167 (0.107526)
明细结果:
[array([0.6875 , 0.75 , 0.875 , 0.8125 , 0.8125 ,
0.6875 , 0.66666667, 0.66666667, 0.66666667, 0.86666667]), array([0.875 , 0.9375 , 0.75 , 0.8125 , 0.6875 ,
0.625 , 0.8 , 0.66666667, 0.8 , 0.86666667]), array([0.75 , 0.75 , 0.8125 , 0.75 , 0.9375 ,
0.75 , 0.86666667, 0.66666667, 0.93333333, 0.93333333]), array([0.5 , 0.8125 , 0.75 , 0.875 , 0.6875 ,
0.6875 , 0.8 , 0.93333333, 0.53333333, 0.86666667]), array([0.8125 , 0.4375 , 0.6875 , 1. , 0.625 ,
0.625 , 0.46666667, 0.4 , 0.66666667, 0.8 ]), array([0.8125 , 1. , 0.8125 , 0.75 , 0.8125 ,
0.6875 , 0.73333333, 0.66666667, 0.6 , 0.86666667])]
# 评估算法:使用原始数据 - 箱线图
# 准确率图,KNN箱子最高,最好,NB是最不好的
fig = pyplot.figure()
fig.suptitle('Algorithm Comparison')
ax = fig.add_subplot(111)
pyplot.boxplot(results)
ax.set_xticklabels(models.keys())
pyplot.show()
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
# 评估算法:使用正态化数据
pipelines = {}
pipelines['ScalerLR'] = Pipeline([('Scaler', StandardScaler()), ('LR', LogisticRegression())])
pipelines['ScalerLDA'] = Pipeline([('Scaler', StandardScaler()), ('LDA', LinearDiscriminantAnalysis())])
pipelines['ScalerKNN'] = Pipeline([('Scaler', StandardScaler()), ('KNN', KNeighborsClassifier())])
pipelines['ScalerCART'] = Pipeline([('Scaler', StandardScaler()), ('CART', DecisionTreeClassifier())])
pipelines['ScalerNB'] = Pipeline([('Scaler', StandardScaler()), ('NB', GaussianNB())])
pipelines['ScalerSVM'] = Pipeline([('Scaler', StandardScaler()), ('SVM', SVC())])
results = []
for key in pipelines:
kfold = KFold(n_splits=num_folds, random_state=seed)
cv_results = cross_val_score(pipelines[key], X_train, Y_train, cv=kfold, scoring=scoring)
results.append(cv_results)
print('%s : %f (%f)' % (key, cv_results.mean(), cv_results.std()))
print('明细结果:')
print(results)
ScalerLR : 0.769167 (0.065648)
ScalerLDA : 0.782083 (0.094594)
ScalerKNN : 0.789167 (0.068546)
ScalerCART : 0.726250 (0.127313)
ScalerNB : 0.652083 (0.177641)
ScalerSVM : 0.819583 (0.082497)
明细结果:
[array([0.6875 , 0.75 , 0.8125 , 0.75 , 0.875 ,
0.75 , 0.66666667, 0.73333333, 0.8 , 0.86666667]), array([0.875 , 0.9375 , 0.75 , 0.8125 , 0.6875 ,
0.625 , 0.8 , 0.66666667, 0.8 , 0.86666667]), array([0.8125 , 0.75 , 0.75 , 0.875 , 0.6875 ,
0.75 , 0.8 , 0.73333333, 0.8 , 0.93333333]), array([0.5 , 0.75 , 0.6875 , 0.875 , 0.625 ,
0.625 , 0.73333333, 0.93333333, 0.66666667, 0.86666667]), array([0.8125 , 0.4375 , 0.6875 , 1. , 0.625 ,
0.625 , 0.46666667, 0.4 , 0.66666667, 0.8 ]), array([0.8125 , 0.8125 , 0.9375 , 0.9375 , 0.8125 ,
0.75 , 0.73333333, 0.86666667, 0.66666667, 0.86666667])]
# 评估算法 - 箱线图
#SVM最好了,其次是KNN
fig = pyplot.figure()
fig.suptitle('Scaled Algorithm Comparison')
ax = fig.add_subplot(111)
pyplot.boxplot(results)
ax.set_xticklabels(models.keys())
pyplot.show()
from sklearn.model_selection import GridSearchCV
# 前面是直接用的模型,这是在改参数,调参改进算法 - KNN 不同的邻居会有不同的算法吗
# 调参改进算法 - KNN
scaler = StandardScaler().fit(X_train)#对模型标准化
rescaledX = scaler.transform(X_train)#构建参数的集合
param_grid = {'n_neighbors': [1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21]}
model = KNeighborsClassifier()
kfold = KFold(n_splits=num_folds, random_state=seed)#算法模型实例化
grid = GridSearchCV(estimator=model, param_grid=param_grid, scoring=scoring, cv=kfold)#引入网格搜索
grid_result = grid.fit(X=rescaledX, y=Y_train)
print('最优:%s 使用%s' % (grid_result.best_score_, grid_result.best_params_))#返回最优的参数,发现用一个邻居数是最好的
cv_results = zip(grid_result.cv_results_['mean_test_score'],
grid_result.cv_results_['std_test_score'],
grid_result.cv_results_['params'])
for mean, std, param in cv_results:
print('%f (%f) with %r' % (mean, std, param))
最优:0.83375 使用{'n_neighbors': 1}
0.833750 (0.058257) with {'n_neighbors': 1}
0.832917 (0.059554) with {'n_neighbors': 3}
0.788750 (0.070761) with {'n_neighbors': 5}
0.748333 (0.107031) with {'n_neighbors': 7}
0.710833 (0.085192) with {'n_neighbors': 9}
0.710833 (0.087066) with {'n_neighbors': 11}
0.730417 (0.113606) with {'n_neighbors': 13}
0.699167 (0.098879) with {'n_neighbors': 15}
0.705417 (0.098831) with {'n_neighbors': 17}
0.711250 (0.092610) with {'n_neighbors': 19}
0.731250 (0.095110) with {'n_neighbors': 21}
# 调参改进算法 - SVM
scaler = StandardScaler().fit(X_train)
rescaledX = scaler.transform(X_train).astype(float)
param_grid = {}
param_grid['C'] = [0.1, 0.3, 0.5, 0.7, 0.9, 1.0, 1.3, 1.5, 1.7, 2.0]
param_grid['kernel'] = ['linear', 'poly', 'rbf', 'sigmoid']
model = SVC()
kfold = KFold(n_splits=num_folds, random_state=seed)
grid = GridSearchCV(estimator=model, param_grid=param_grid, scoring=scoring, cv=kfold)
grid_result = grid.fit(X=rescaledX, y=Y_train)
print('最优:%s 使用%s' % (grid_result.best_score_, grid_result.best_params_))
cv_results = zip(grid_result.cv_results_['mean_test_score'],
grid_result.cv_results_['std_test_score'],
grid_result.cv_results_['params'])
for mean, std, param in cv_results:
print('%f (%f) with %r' % (mean, std, param))
最优:0.8391666666666666 使用{'C': 1.5, 'kernel': 'rbf'}
0.762083 (0.088417) with {'C': 0.1, 'kernel': 'linear'}
0.605417 (0.176964) with {'C': 0.1, 'kernel': 'poly'}
0.531250 (0.074448) with {'C': 0.1, 'kernel': 'rbf'}
0.711250 (0.060612) with {'C': 0.1, 'kernel': 'sigmoid'}
0.737083 (0.078272) with {'C': 0.3, 'kernel': 'linear'}
0.702917 (0.145655) with {'C': 0.3, 'kernel': 'poly'}
0.744167 (0.110996) with {'C': 0.3, 'kernel': 'rbf'}
0.762083 (0.083238) with {'C': 0.3, 'kernel': 'sigmoid'}
0.730417 (0.076127) with {'C': 0.5, 'kernel': 'linear'}
0.755417 (0.155121) with {'C': 0.5, 'kernel': 'poly'}
0.756667 (0.067268) with {'C': 0.5, 'kernel': 'rbf'}
0.755833 (0.086205) with {'C': 0.5, 'kernel': 'sigmoid'}
0.730417 (0.094447) with {'C': 0.7, 'kernel': 'linear'}
0.767917 (0.148664) with {'C': 0.7, 'kernel': 'poly'}
0.813333 (0.089594) with {'C': 0.7, 'kernel': 'rbf'}
0.749583 (0.084110) with {'C': 0.7, 'kernel': 'sigmoid'}
0.723750 (0.100848) with {'C': 0.9, 'kernel': 'linear'}
0.780000 (0.138316) with {'C': 0.9, 'kernel': 'poly'}
0.819583 (0.082497) with {'C': 0.9, 'kernel': 'rbf'}
0.730833 (0.084249) with {'C': 0.9, 'kernel': 'sigmoid'}
0.730417 (0.094447) with {'C': 1.0, 'kernel': 'linear'}
0.792917 (0.126602) with {'C': 1.0, 'kernel': 'poly'}
0.825833 (0.084076) with {'C': 1.0, 'kernel': 'rbf'}
0.731250 (0.091652) with {'C': 1.0, 'kernel': 'sigmoid'}
0.730417 (0.102910) with {'C': 1.3, 'kernel': 'linear'}
0.793333 (0.111246) with {'C': 1.3, 'kernel': 'poly'}
0.819583 (0.091478) with {'C': 1.3, 'kernel': 'rbf'}
0.723750 (0.105163) with {'C': 1.3, 'kernel': 'sigmoid'}
0.730000 (0.112373) with {'C': 1.5, 'kernel': 'linear'}
0.806667 (0.101366) with {'C': 1.5, 'kernel': 'poly'}
0.839167 (0.088117) with {'C': 1.5, 'kernel': 'rbf'}
0.730000 (0.103125) with {'C': 1.5, 'kernel': 'sigmoid'}
0.723750 (0.122773) with {'C': 1.7, 'kernel': 'linear'}
0.806667 (0.101366) with {'C': 1.7, 'kernel': 'poly'}
0.832917 (0.082988) with {'C': 1.7, 'kernel': 'rbf'}
0.724167 (0.085143) with {'C': 1.7, 'kernel': 'sigmoid'}
0.723750 (0.122773) with {'C': 2.0, 'kernel': 'linear'}
0.793333 (0.109785) with {'C': 2.0, 'kernel': 'poly'}
0.839167 (0.083566) with {'C': 2.0, 'kernel': 'rbf'}
0.717083 (0.079505) with {'C': 2.0, 'kernel': 'sigmoid'}
#用默认的参数做一遍看效果
#引入四种集成模型
from sklearn.ensemble import AdaBoostClassifier
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.ensemble import RandomForestClassifier
from sklearn.ensemble import ExtraTreesClassifier
# 集成算法
ensembles = {}
ensembles['ScaledAB'] = Pipeline([('Scaler', StandardScaler()), ('AB', AdaBoostClassifier())])
ensembles['ScaledGBM'] = Pipeline([('Scaler', StandardScaler()), ('GBM', GradientBoostingClassifier())])
ensembles['ScaledRF'] = Pipeline([('Scaler', StandardScaler()), ('RFR', RandomForestClassifier())])
ensembles['ScaledET'] = Pipeline([('Scaler', StandardScaler()), ('ETR', ExtraTreesClassifier())])
results = []
for key in ensembles:
kfold = KFold(n_splits=num_folds, random_state=seed)
cv_result = cross_val_score(ensembles[key], X_train, Y_train, cv=kfold, scoring=scoring)
results.append(cv_result)
print('%s: %f (%f)' % (key, cv_result.mean(), cv_result.std()))
#发现集成算法比上面单一的算法整体要好
#但是如果不追求准确率到达80%觉得70%左右也可以,那么不需要用这种计算量较大的算法,考虑优化的收益和投入的时间
ScaledAB: 0.846250 (0.077761)
ScaledGBM: 0.825833 (0.094056)
ScaledRF: 0.807500 (0.083911)
ScaledET: 0.858333 (0.075208)
# 集成算法 - 箱线图,发现GBM效果最好,极端值较少
fig = pyplot.figure()
fig.suptitle('集成算法箱线图')
ax = fig.add_subplot(111)
pyplot.boxplot(results)
ax.set_xticklabels(ensembles.keys())
pyplot.show()
# 集成算法GBM - 调参
scaler = StandardScaler().fit(X_train)
rescaledX = scaler.transform(X_train)
param_grid = {'n_estimators': [10, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900]}
model = GradientBoostingClassifier()
kfold = KFold(n_splits=num_folds, random_state=seed)
grid = GridSearchCV(estimator=model, param_grid=param_grid, scoring=scoring, cv=kfold)
grid_result = grid.fit(X=rescaledX, y=Y_train)
print('最优:%s 使用%s' % (grid_result.best_score_, grid_result.best_params_))
最优:0.8383333333333333 使用{'n_estimators': 200}
# 集成算法ETR - 调参
scaler = StandardScaler().fit(X_train)
rescaledX = scaler.transform(X_train)
param_grid = {'n_estimators': [10, 50, 100, 200, 300, 400, 500, 600, 700, 800, 900]}
model = ExtraTreesClassifier()
kfold = KFold(n_splits=num_folds, random_state=seed)
grid = GridSearchCV(estimator=model, param_grid=param_grid, scoring=scoring, cv=kfold)
grid_result = grid.fit(X=rescaledX, y=Y_train)
print('最优:%s 使用%s' % (grid_result.best_score_, grid_result.best_params_))
最优:0.9029166666666667 使用{'n_estimators': 600}
#准确率评估
from sklearn.metrics import accuracy_score
from sklearn.metrics import confusion_matrix
from sklearn.metrics import classification_report
# 模型最终化
scaler = StandardScaler().fit(X_train)
rescaledX = scaler.transform(X_train)
model = SVC(C=1.5, kernel='rbf')
model.fit(X=rescaledX, y=Y_train)
# 评估模型,准确率 (Precision)、召回率 (Recall)、F值 (F-Measure)简介,支持度
rescaled_validationX = scaler.transform(X_validation)
predictions = model.predict(rescaled_validationX)
print(accuracy_score(Y_validation, predictions))
print(confusion_matrix(Y_validation, predictions))
print(classification_report(Y_validation, predictions))
0.9038461538461539
[[27 3]
[ 2 20]]
precision recall f1-score support
M 0.93 0.90 0.92 30
R 0.87 0.91 0.89 22
accuracy 0.90 52
macro avg 0.90 0.90 0.90 52
weighted avg 0.91 0.90 0.90 52