public void CreateLiveCollection() { SimulinkRbf simulinkrbf = new SimulinkRbf(); var docs = simulinkrbf.mongocrud.QueryMongo(); foreach (var doc in docs) { string[] ids = doc.matchid.Split(new char[] { '\r', '\n' }); string[] pnns = doc.pnn.Split(new char[] { '\r', '\n' }); string[] grnns = doc.grnn.Split(new char[] { '\r', '\n' }); for (int i = 0; i < ids.Length; i++) { int index = 0; StagingETLsDocument std = new StagingETLsDocument(); std._id = long.Parse(ids[i]); std.pnn_310values = int.Parse(pnns[i]); string[] grnn_vs = grnns[i].Trim().Split(new char[] { ' ' }); foreach (var vs in grnn_vs) { if (vs != string.Empty) { grnn_vs[index] = vs; index++; } } std.grnn_home_goals = int.Parse(grnn_vs[0]); std.grnn_away_goals = int.Parse(grnn_vs[1]); std.grnn_310values = int.Parse(grnn_vs[2]); mongo_StagingETLs.MongoDropColCreateCol.Insert(std); } } Console.WriteLine("StagingETLs->mongo->ok"); }
public static void DoSimulink() { SimulinkMatchNow smm = new SimulinkMatchNow(); SimulinkMatchOver smo = new SimulinkMatchOver(); SimulinkRbf simulinkrbf = new SimulinkRbf(); int simulinkno = 0; var lookup_now = smm.mongocrud.QueryMongo() .Where(e => e.Haway_count > 0).Where(e => e.Hhost_count > 0) .Where(e => e.Ahost_count > 0).Where(e => e.Aaway_count > 0).ToLookup(e => e.match_type); var lookup_over = smo.mongocrud.QueryMongo() .Where(e => e.Haway_count > 0).Where(e => e.Hhost_count > 0) .Where(e => e.Ahost_count > 0).Where(e => e.Aaway_count > 0).ToLookup(e => e.match_type); foreach (var nowM in lookup_now) { simulinkno++; NNPredication nn = new NNPredication(); DataTable dt1 = nowM.ToDataTable(); string streamx = DataTableToTxt.DataTable2Txt(dt1, nn.tempx); var overM = lookup_over[nowM.Key]; DataTable dt2 = overM.ToDataTable(); string streamy = DataTableToTxt.DataTable2Txt(dt2, nn.tempy); SimulinkRbfLog srlog = new SimulinkRbfLog(); srlog._id = simulinkno; Console.WriteLine(srlog._id); srlog.matchtype = nowM.Key; srlog.matchover = streamy; //y是训练用 srlog.matchnow = streamx; //x是预测目标 srlog.matchnowColumn = DataTableToTxt.getDataTableColumnName(dt1); srlog.matchoverColumn = DataTableToTxt.getDataTableColumnName(dt2); srlog.matchid = nowM.Select(e => e._id.ToString()).ToList().Aggregate((a, b) => a + "\n" + b); srlog.grnn = nn.NewGrnn(); srlog.pnn = nn.NewPnn(); simulinkrbf.mongocrud.MongoDropColCreateCol.Insert(srlog); } Console.WriteLine("DoSimulink->mongo->ok"); }