daru v0.0.5 Release Notes
Release Date: 2015-02-28 // about 9 years ago-
- Easy accessors for some methods
- Faster CSV loading.
- ๐ Changed vector #is_valid? to #exists?
- Revamped dtype specifiers for Vector. Now specify :array/:nmatrix for changing underlying data implementation. Specigfy nm_dtype for specifying the data type of the NMatrix object.
- #sort for Vector. Quick sort algorithm with preservation of original indexes.
- Removed #re_index and #to_index from Daru::Index.
- Ability to change the index of Vector and DataFrame with #reindex/#reindex!.
- Multi-level #sort! and #sort for DataFrames. Preserves indexing.
- All vector statistics now work with NMatrix as the underlying data type.
- Vectors keep a record of all positions with nils with #nil_positions.
- Know whether a position has nils or not with #is_nil?
- โ Added #clone_structure to Vector for cloning only the index and structure or a vector.
- Figure out the type of data using #type. Running thru the data to determine its type is delayed till the last possible moment.
- โ Added arithmetic operations between data frame and scalars or other data frames.
- โ Added #map_vectors!.
- Create a DataFrame from Array of Arrays and Array of Vectors.
- ๐จ Refactored DataFrame.rows and the DataFrame constructor.
- โ Added hierarchial indexing to Vector and DataFrame with MultiIndex.
- Convert DataFrame to ruby Matrix or NMatrix with #to_matrix and #to_nmatrix.
- โ Added #group_by to DataFrame for grouping rows according to elements in a given column. Works similar to SQL GROUP BY, only much simpler.
- โ Added new class Daru::Core::GroupBy for supporting various grouping methods like #head, #tail, #get_group, #size, #count, #mean, #std, #min, #max.
- Tranpose indexed/multi-indexed DataFrame with #transpose.
- ๐ Convert Daru::Vector to horizontal or vertical Ruby Matrix with #to_matrix.
- Added shortcut to DataFrame to allow access of vectors by using only #[] instead of calling #vector or [vector_names, :vector].
- โ Added DSL for Vector and DataFrame plotting with nyaplot. Can now grab the underlying Nyaplot::Plot and Nyaplot::Diagram object for performing different operations. Only need to supply parameters for the initial creation of the diagram.
- โ Added #pivot_table to DataFrame for reducing and aggregating data to generate a quick summary.
- โ Added #shape to DataFrame for knowing the numbers of rows and columns in a DataFrame.
- โ Added statistics methods #mean, #std, #max, #min, #count, #product, #sum to DataFrame.
- โ Added #describe to DataFrame for producing multiple statistics data of numerical vectors in one shot.
- ๐ Monkey patched Ruby Matrix to include #elementwise_division.
- โ Added #covariance to calculate the covariance between numbers of a DataFrame and #correlation to calculate correlation.
- Enumerators return Enumerator objects if there is no block.