fslaborg / Deedle

Easy to use .NET library for data and time series manipulation and for scientific programming
http://fslab.org/Deedle/
BSD 2-Clause "Simplified" License
924 stars 196 forks source link

series.GetKeyAt and frame.GetRowKeyAt take different types for index. Seems inconsistent. #523

Open travis-leith opened 3 years ago

travis-leith commented 3 years ago

series.GetKeyAt takes an index of type int frame.GetRowKeyAt takes an index of type int64.

Should these not be the same type?

zyzhu commented 3 years ago

int64 came from the Big Deedle prototype @tpetricek experimented back here https://github.com/fslaborg/Deedle/blame/c5c011a176a0989369cc474e9cd9ff2405968b4a/src/Deedle/Indices/Index.fs#L131

On the other hand, int64 address are preserved mostly internal. The public interfaces convert them back to int to keep library from breaking changes during the experiment. Such as this https://github.com/fslaborg/Deedle/blob/master/src/Deedle/Frame.fs#L175

In that sense, it's a separate discussion whether the library shall keep the half-baked Big Deedle.