Esempio n. 1
0
        //Method to create DataFrame
        public void createDF()
        {
            PISetup ps = new PISetup();

            Dictionary <DateTime, Object> dict = ps.getArchiveValues();

            Double[] db = new double[dict.Count];
            String[] dt = new String[dict.Count];

            int i = 0;

            foreach (object ob in dict.Values)
            {
                db[i] = Convert.ToDouble(ob);
                i    += 1;
            }

            int j = 0;

            foreach (DateTime da in dict.Keys)
            {
                dt[j] = Convert.ToString(da);
                j    += 1;
            }

            NumericVector   myNum = engine.CreateNumericVector(db);
            CharacterVector myCha = engine.CreateCharacterVector(dt);

            engine.SetSymbol("Time", myCha);
            engine.SetSymbol("BA.TEMP.1", myNum);
            engine.Evaluate("df <- data.frame(Timestamp=c(Time), BA.TEMP.1=c(BA.TEMP.1))");
            //engine.Evaluate("write.csv(df, file = \"C:/File_1.csv\")");
            //engine.Evaluate("View(df)");
        }
Esempio n. 2
0
        //Method to create DataFrame
        public void createDF_new()
        {
            PISetup ps = new PISetup();

            Object[,] obj = ps.getArchiveValues_new();

            String[] date   = new String[obj.GetLength(1)];
            String[] phase  = new String[obj.GetLength(1)];
            String[] status = new String[obj.GetLength(1)];
            Double[] temp   = new double[obj.GetLength(1)];
            Double[] conc   = new double[obj.GetLength(1)];
            Double[] level  = new double[obj.GetLength(1)];

            for (int i = 0; i < obj.GetLength(1); i++)
            {
                date[i] = Convert.ToString(obj[0, i]);
            }

            for (int i = 0; i < obj.GetLength(1); i++)
            {
                phase[i] = Convert.ToString(obj[4, i]);
            }

            for (int i = 0; i < obj.GetLength(1); i++)
            {
                status[i] = Convert.ToString(obj[5, i]);
            }


            for (int i = 0; i < obj.GetLength(1); i++)
            {
                temp[i] = Convert.ToDouble(obj[1, i]);
            }

            for (int i = 0; i < obj.GetLength(1); i++)
            {
                conc[i] = Convert.ToDouble(obj[2, i]);
            }

            for (int i = 0; i < obj.GetLength(1); i++)
            {
                level[i] = Convert.ToDouble(obj[3, i]);
            }

            NumericVector   temp_vec   = engine.CreateNumericVector(temp);
            NumericVector   conc_vec   = engine.CreateNumericVector(conc);
            NumericVector   level_vec  = engine.CreateNumericVector(level);
            CharacterVector date_vec   = engine.CreateCharacterVector(date);
            CharacterVector phase_vec  = engine.CreateCharacterVector(phase);
            CharacterVector status_vec = engine.CreateCharacterVector(status);

            engine.SetSymbol("Time", date_vec);
            engine.SetSymbol("BA.TEMP.1", temp_vec);
            engine.SetSymbol("BA.CONC.1", conc_vec);
            engine.SetSymbol("BA.LEVEL.1", level_vec);
            engine.SetSymbol("BA.PHASE.1", phase_vec);
            engine.SetSymbol("BA.ACTIVE.1", status_vec);
            write_to_csv("name.csv");
            engine.Evaluate("df <- data.frame(Timestamp=c(Time), BA.TEMP.1=c(BA.TEMP.1), BA.CONC.1=c(BA.CONC.1), BA.LEVEL.1=c(BA.LEVEL.1), BA.PHASE.1=c(BA.PHASE.1), BA.ACTIVE.1=c(BA.ACTIVE.1))");

            //engine.Evaluate("View(df)");
        }