public ActionResult DataPreprocess(DataPreprocessViewModel view) { //讀檔案路徑 Users user = userservice.FindUser(User.Identity.Name); string MapPath = filePath + user.Site + "/" + view.ProjectId + "/"; string path = MapPath + view.ProjectId; string file, savePath, corrPath, select; if (view.mode == "2") //predict { file = path + "_predict.csv"; savePath = path + "_predict_pre.csv"; corrPath = "null"; } else { file = path + ".csv"; savePath = path + "_pre.csv"; corrPath = path + "_corr.csv"; } select = (view.Selected != null) ? String.Join(",", view.Selected.ToArray()) : "null"; //判斷selected是否有值 //執行預處理 string arg = $"{pyPath}preprocessing.py {file} {view.abnormal} {view.outlier} {view.fill} {savePath} {corrPath} {"null"} {select.Replace(' ', '_')}"; //字串不可含空白 callpython.CMD(); string output = callpython.Execute(arg); //無法補值 string[] data = output.Split('/'); DataPreprocess pre = new DataPreprocess(); pre.cantfill = data[5]; //更新執行步驟&時間 if (view.mode == "1") { modelservice.DataSplit(view.ProjectId, view.TrainVal, view.ValidVal, view.TestVal); //存train/valid/test modelservice.UpdateProcess(view.ProjectId, 2); } return(RedirectToAction("ChooseModel", "Model", pre)); }