I am attempting to turn a Swift TabularData DataFrame column into an array. The Apple Developer Documentation here describes the following Instance Subscript that does exactly that:
subscript<T>(columnName: String, type: T.Type = T.self) -> [T?] { get set }
However, when I attempt to the following code on a DataFrame (named elevationsDf) with a column (named "PLoss"), it returns a Column<Double> instead of a [Double].
print(type(of: elevationsDf["PLoss", Double.self]))
What should I change to address this issue?
>Solution :
Well, DataFrame also has this subscript:
subscript<T>(columnName: String, type: T.Type) -> Column<T> { get set }
And that is what your code resolves to.
To call the subscript that you want, you can specify the type of the result explicitly:
let c: [Int?] = df["a", Int.self]
Or just:
let c: [Int?] = df["a"]