#r "nuget: Microsoft.Data.Analysis, 0.20.1"
using Microsoft.Data.Analysis;
var column = new DateTimeDataFrameColumn("Test");
column.Append(DateTime.Today);
var df = new DataFrame(column);
Console.WriteLine(column == df["Test"]); // true
Console.WriteLine(column.ElementwiseEquals(DateTime.Today).Any()); // True
df["Test"].ElementwiseEquals(DateTime.Today) // Throws NullReferenceException
Stack trace
Error: System.NullReferenceException: Object reference not set to an instance of an object.
at Microsoft.Data.Analysis.PrimitiveDataFrameColumn1.ElementwiseEqualsImplementation[U](U value) at Microsoft.Data.Analysis.PrimitiveDataFrameColumn1.ElementwiseEquals[U](U value)
at Submission#6.<>d__0.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.CodeAnalysis.Scripting.ScriptExecutionState.RunSubmissionsAsync[TResult](ImmutableArray1 precedingExecutors, Func2 currentExecutor, StrongBox1 exceptionHolderOpt, Func2 catchExceptionOpt, CancellationToken cancellationToken)
System Information (please complete the following information):
Describe the bug Invoking ElementwiseEquals on a PrimitiveDataFrameColumn obtained by accessing DataFrame["ColumnName"] throws NullReferenceException
To Reproduce
this[string column]
getter, es:df["ColumnName"]
Expected behavior
df["Test"]
should behave likecolumn
and should not throw exceptions.Screenshots, Code, Sample Projects Reproduction example:
Stack trace Error: System.NullReferenceException: Object reference not set to an instance of an object. at Microsoft.Data.Analysis.PrimitiveDataFrameColumn>d__0.MoveNext()
--- End of stack trace from previous location ---
at Microsoft.CodeAnalysis.Scripting.ScriptExecutionState.RunSubmissionsAsync[TResult](ImmutableArray
1.ElementwiseEqualsImplementation[U](U value) at Microsoft.Data.Analysis.PrimitiveDataFrameColumn
1.ElementwiseEquals[U](U value) at Submission#6.<1 precedingExecutors, Func
2 currentExecutor, StrongBox1 exceptionHolderOpt, Func
2 catchExceptionOpt, CancellationToken cancellationToken)