Example #1
0
        public void AddCalculatedColumn_Test02()
        {
            var dict = new Dictionary <string, List <object> >
            {
                { "col1", new List <object>()
                  {
                      1, 11, 21, 31, 41, 51, 61, 71, 81, 91
                  } },
                { "col2", new List <object>()
                  {
                      2, 12, 22, 32, 42, 52, 62, 72, 82, 92
                  } },
                { "col3", new List <object>()
                  {
                      3, 13, 23, 33, 43, 53, 63, 73, 83, 93
                  } },
                { "col4", new List <object>()
                  {
                      4, 14, 24, 34, 44, 54, 64, 74, 84, 94
                  } },
                { "col5", new List <object>()
                  {
                      5, 15, 25, 35, 45, 55, 65, 75, 85, 95
                  } },
                { "col6", new List <object>()
                  {
                      6, 16, 26, 36, 46, 56, 66, 76, 86, 96
                  } },
                { "col7", new List <object>()
                  {
                      7, 17, 27, 37, 47, 57, 67, 77, 87, 97
                  } },
                { "col8", new List <object>()
                  {
                      8, 18, 28, 38, 48, 58, 68, 78, 88, 98
                  } },
                { "col9", new List <object>()
                  {
                      9, 19, 29, 39, 49, 59, 69, 79, 89, 99
                  } },
                { "col10", new List <object>()
                  {
                      10, 20, 30, 40, 50, 60, 70, 80, 90, 100
                  } },
            };

            //
            var df   = new DataFrame(dict);
            var df01 = df.AddCalculatedColumn("col11", (object[] row, int i) => i + 11);

            //column test
            var c1 = new int[] { 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 };

            var cc1 = df["col11"].ToList();

            for (int i = 0; i < 10; i++)
            {
                Assert.Equal((int)c1[i], cc1[i]);
            }
        }
Example #2
0
        private DataFrame getMonthlyDeatsData()
        {
            var strPath = $"{root}/monthly_acc_deaths_usa_1973_78.txt";
            var mlDF    = DataFrame.FromCsv(strPath, sep: '\t', skipLines: 1);

            var monthlySeries = nc.GenerateMonthlySeries(new DateTime(1973, 1, 1), 1, (1979 - 1973) * 12);
            var mainDF        = new DataFrame(monthlySeries, new List <string> {
                "Date"
            }, null);

            mainDF.AddCalculatedColumn("D", (object[] r, int i) =>
            {
                var date = Convert.ToDateTime(r[0]);
                //create index for accessing the temp and precipitation
                int year  = date.Year - 1973 + 1;
                int month = date.Month - 1;
                return(mlDF[month, year]);
            });
            //add index
            mainDF = mainDF.SetIndex("Date");
            //
            return(mainDF);
        }