()
| 137 | |
| 138 | @app.route('/api-fit', methods = ['POST', 'GET']) |
| 139 | def fit() : |
| 140 | |
| 141 | if request.method == 'POST': |
| 142 | |
| 143 | data = json.loads(str(request.data, 'utf-8')) |
| 144 | |
| 145 | dataSet, discrete, textColumn = pullDataSet(str(data['hashKey'])) |
| 146 | |
| 147 | model = -1 |
| 148 | |
| 149 | model_id = 0 |
| 150 | |
| 151 | ssler = None |
| 152 | |
| 153 | target = '' |
| 154 | |
| 155 | if(dataSet is None) : return '{"status_code" : 403,"msg" : "数据已过期"}' |
| 156 | |
| 157 | if('model' in data) : model_id = model = data['model'] |
| 158 | |
| 159 | if(model <= 0 or model > 6) : return '{"status_code" : 403,"msg" : "模型种类无效"}' |
| 160 | |
| 161 | if('target' in data and data['target'] in dataSet.columns): target = data['target'] |
| 162 | else : return '{"status_code" : 403,"msg" : "标签无效"}' |
| 163 | |
| 164 | if(model == 1) : |
| 165 | |
| 166 | y = np.array(dataSet[target]) |
| 167 | |
| 168 | model, ssler = NBayesTraining(dataSet, y, textColumn) |
| 169 | |
| 170 | elif(model == 2) : |
| 171 | |
| 172 | x, y = DataFrame2NPArray(dataSet, target) |
| 173 | |
| 174 | model, ssler = KNNTraining(x, y) |
| 175 | |
| 176 | elif(model == 3) : |
| 177 | |
| 178 | x, y = DataFrame2NPArray(dataSet, target) |
| 179 | |
| 180 | model, ssler = SVMTraining(x, y) |
| 181 | |
| 182 | elif(model == 4) : |
| 183 | |
| 184 | x, y = DataFrame2NPArray(dataSet, target) |
| 185 | |
| 186 | model, ssler = LinearRegressionTraining(x, y) |
| 187 | |
| 188 | elif(model == 5) : |
| 189 | |
| 190 | x, y = DataFrame2NPArray(dataSet, target) |
| 191 | |
| 192 | model, ssler = LogisticRegressionTraining(x, y) |
| 193 | |
| 194 | elif(model == 6) : |
| 195 | |
| 196 | x, y = DataFrame2NPArray(dataSet, target) |
nothing calls this directly
no test coverage detected