.Net Core 3.1
Microsoft.Data.Analysis Nuget package version: 0.19.1
This would be the logical way to call the method:
dataFrame.Columns["Date_left"].SetName("Date");
But, this does not result in the column being properly renamed.
The method needs to be called like this in order to work properly:
dataFrame.Columns["Date_left"].SetName("Date", dataFrame);
Here's a program to reproduce the issue:
usingMicrosoft.Data.Analysis;usingSystem;usingSystem.Linq;namespaceTestDataFRame{internalclassProgram{staticvoidMain(string[]args){DateTime?[]dates1={newDateTime(2022,03,01),newDateTime(2022,03,02),newDateTime(2022,03,03)};double?[]closePrices={10.5,12.4,11.3};DateTime?[]dates2={newDateTime(2022,03,01),newDateTime(2022,03,02),newDateTime(2022,03,03),newDateTime(2022,03,04)};double[]shortPercentages={2.34,2.36,3.01,3.04};DataFramedataFrame1=newDataFrame();dataFrame1.Columns.Add(newPrimitiveDataFrameColumn<DateTime>("Date",dates1));dataFrame1.Columns.Add(newDoubleDataFrameColumn("ClosePrice",closePrices));varnumbers1=dataFrame1.Columns.GetDoubleColumn("ClosePrice").ToArray();DataFramedataFrame2=newDataFrame();dataFrame2.Columns.Add(newPrimitiveDataFrameColumn<DateTime>("Date",dates2));dataFrame2.Columns.Add(newDoubleDataFrameColumn("ShortPercentage",shortPercentages));varnumbers2=dataFrame2.Columns.GetDoubleColumn("ShortPercentage").ToArray();DataFramedataFrame=dataFrame1.Merge<DateTime>(dataFrame2,"Date","Date",joinAlgorithm:JoinAlgorithm.Left);dataFrame.Columns["Date_left"].SetName("Date");vardates=dataFrame.Columns.GetPrimitiveColumn<DateTime>("Date").ToArray();}}}
.Net Core 3.1
Microsoft.Data.Analysis Nuget package version: 0.19.1
This would be the logical way to call the method:
dataFrame.Columns["Date_left"].SetName("Date");
But, this does not result in the column being properly renamed.
The method needs to be called like this in order to work properly:
dataFrame.Columns["Date_left"].SetName("Date", dataFrame);
Here's a program to reproduce the issue: