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]); } }
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); }