Wednesday, May 20, 2015

Data tables and data frames

Many modern languages have now something called a data frame or data table that can store tabular data with a mixture of numeric, string columns and columns of other types. This is much more flexible than a typical array (with elements having all the same type) and more organized than just say a list of lists. Of course relational databases have tables that have a similar structure.

R has data frames, which form arguably the most important data structure in R.

Python has a DataFrame as part of pandas, the toolkit for doing data analysis.

Matlab has a new Table data type. Their statistical toolbox still has a DataSet.

.Net has a DataTable class which I use often.

I am missing similar "standard" facilities in C++, Java (ResultSet is not really the same) and in modeling systems like AMPL and GAMS.