Skip to content
This repository was archived by the owner on Aug 17, 2024. It is now read-only.

Latest commit

 

History

History
312 lines (187 loc) · 6.92 KB

group.md

File metadata and controls

312 lines (187 loc) · 6.92 KB

Table of Contents

GroupedDataFrame

src/group.js:6-239

Grouped DataFrame structure grouping DataFrame rows by column value.

Parameters

  • df DataFrame The DataFrame to group by.
  • columnNames
  • groups
  • hashes
  • columnName String The column used for the group by.

toCollection

src/group.js:39-41

Convert GroupedDataFrame into collection (Array) of dictionnaries (Object).

Examples

groupedDF.toCollection();

Returns Array An Array containing group: {groupKey, group}.

show

src/group.js:50-60

Display the GroupedDataFrame as String Table.

Parameters

  • quiet Boolean Quiet mode. If true, it doesn't trigger console.log(). (optional, default false)

Examples

groupedDf.show()

Returns String The GroupedDataFrame as String Table.

listGroups

src/group.js:68-70

List GroupedDataFrame groups.

Examples

gdf.listGroups()

Returns Array An Array containing GroupedDataFrame group names.

listHashs

src/group.js:78-80

List GroupedDataFrame groups as a hashCode.

Examples

gdf.listHashCodes()

Returns Array An Array containing GroupedDataFrame hash codes.

map

src/group.js:89-95

Map on DataFrame groups.

Parameters

  • func Function The function to apply to each row of each group.

Examples

groupedDF.map((row,i) => row.set('b', row.get('a')*i));

Returns DataFrame A new DataFrame containing the result.

filter

src/group.js:104-114

Filter a grouped DataFrame.

Parameters

  • condition Function A filter function or a column/value object.

Examples

groupedDF.filter((row,i) => (i === 0));

Returns DataFrame A new filtered DataFrame.

chain

src/group.js:129-135

Chain maps and filters functions on DataFrame by optimizing their executions. If a function returns boolean, it's a filter. Else it's a map. It can be 10 - 100 x faster than standard chains of .map() and .filter().

Parameters

  • funcs ...Function Functions to apply on the DataFrame rows taking the row as parameter.

Examples

groupedDF.chain(
     (row, i) => (i === 0), // filter
     row => row.set('column1', 3),  // map
     row => row.get('column2') === '5' // filter
)

Returns DataFrame A new DataFrame with modified rows.

aggregate

src/group.js:145-153

Create an aggregation from a function.

Parameters

  • func Function The aggregation function.
  • columnName String The column name created by the aggregation. (optional, default 'aggregation')

Examples

groupedDF.aggregate(group => group.stat.sum('column1'));

Returns DataFrame A new DataFrame with a column 'aggregation' containing the result.

pivot

src/group.js:163-191

Pivot a GroupedDataFrame.

Parameters

  • columnToPivot String The column which will be transposed as columns.
  • func Function The function to define each column value from a DataFrame. (optional, default (gdf)=>gdf.count())

Examples

df.groupBy('carType').pivot('carModel', values => values.stat.sum('kms'))

Returns DataFrame The pivot DataFrame.

melt

src/group.js:201-238

Melt a DataFrame to make it tidy. It's the reverse of GroupedDataFrame.pivot().

Parameters

  • variableColumnName String The column name containing values. (optional, default 'value')
  • valueColumnName (optional, default "value")

Examples

df.groupBy('carType').melt('kms')

Returns DataFrame The tidy DataFrame.