Class: DataFrame
dg.DataFrame
DataFrame is a high-performance, easy to use tabular structure with strongly-typed columns of different types.
In the API, the terms "Table" and "DataFrame" are used interchangeably.
Usage samples: https://public.datagrok.ai/js/samples/data-frame/manipulate Usage details: https://datagrok.ai/help/develop/advanced/data-frame Implementation details: https://datagrok.ai/help/develop/admin/architecture#in-memory-database
Constructors
constructor
• new DataFrame(dart
)
Parameters
Name | Type |
---|---|
dart | any |
Defined in
Properties
_dialogs
• Private
_dialogs: undefined
| DataFrameDialogHelper
Defined in
_meta
• _meta: undefined
| DataFrameMetaHelper
Defined in
_plot
• Private
_plot: undefined
| DataFramePlotHelper
Defined in
columns
• columns: ColumnList
Defined in
dart
• Readonly
dart: any
Defined in
filter
• filter: BitSet
Defined in
rows
• rows: RowList
Defined in
tags
• tags: any
Defined in
temp
• temp: any
Defined in
Accessors
currentCell
• get
currentCell(): Cell
Current cell. Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Returns
Defined in
• set
currentCell(cell
): void
Current cell. Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Parameters
Name | Type |
---|---|
cell | Cell |
Returns
void
Defined in
currentCol
• get
currentCol(): Column
<any
>
Current column. Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Returns
Column
<any
>
Defined in
• set
currentCol(col
): void
Current column. Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Parameters
Name | Type |
---|---|
col | Column <any > |
Returns
void
Defined in
currentRow
• get
currentRow(): Row
Current row. Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Returns
Defined in
• set
currentRow(idx
): void
Current row. Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Parameters
Name | Type |
---|---|
idx | Row |
Returns
void
Defined in
currentRowIdx
• get
currentRowIdx(): number
Index of the current row.
Returns
number
Defined in
• set
currentRowIdx(idx
): void
Parameters
Name | Type |
---|---|
idx | number |
Returns
void
Defined in
dialogs
• get
dialogs(): DataFrameDialogHelper
Returns
Defined in
id
• get
id(): string
Id of the dataframe.
Returns
string
Defined in
• set
id(id
): void
Parameters
Name | Type |
---|---|
id | string |
Returns
void
Defined in
meta
• get
meta(): DataFrameMetaHelper
A helper to conveniently access certain metadata properties stored in tags
Returns
Defined in
mouseOverRowIdx
• get
mouseOverRowIdx(): number
Index of the mouse-over row.
Returns
number
Defined in
• set
mouseOverRowIdx(idx
): void
Parameters
Name | Type |
---|---|
idx | number |
Returns
void
Defined in
name
• get
name(): string
Name of the dataframe.
Returns
string
Defined in
• set
name(s
): void
Parameters
Name | Type |
---|---|
s | string |
Returns
void
Defined in
onColumnNameChanged
• get
onColumnNameChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onColumnSelectionChanged
• get
onColumnSelectionChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onColumnsAdded
• get
onColumnsAdded(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onColumnsChanged
• get
onColumnsChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onColumnsRemoved
• get
onColumnsRemoved(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onCurrentCellChanged
• get
onCurrentCellChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Returns
Observable
<any
>
Defined in
onCurrentColChanged
• get
onCurrentColChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Returns
Observable
<any
>
Defined in
onCurrentRowChanged
• get
onCurrentRowChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/current-elements
Returns
Observable
<any
>
Defined in
onDataChanged
• get
onDataChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onFilterChanged
• get
onFilterChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onMetadataChanged
• get
onMetadataChanged(): Observable
<EventData
<MapChangeArgs
<string
, string
>>>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<EventData
<MapChangeArgs
<string
, string
>>>
Defined in
onMouseOverColChanged
• get
onMouseOverColChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onMouseOverRowChanged
• get
onMouseOverRowChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onMouseOverRowGroupChanged
• get
onMouseOverRowGroupChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onNameChanged
• get
onNameChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onRowsAdded
• get
onRowsAdded(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onRowsFiltered
• get
onRowsFiltered(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onRowsFiltering
• get
onRowsFiltering(): Observable
<any
>
Returns
Observable
<any
>
Defined in
onRowsRemoved
• get
onRowsRemoved(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onSelectionChanged
• get
onSelectionChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
onSemanticTypeDetected
• get
onSemanticTypeDetected(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/advanced/semantic-type-detection
Returns
Observable
<any
>
Defined in
onSemanticTypeDetecting
• get
onSemanticTypeDetecting(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/advanced/semantic-type-detection
Returns
Observable
<any
>
Defined in
onValuesChanged
• get
onValuesChanged(): Observable
<any
>
Sample: https://public.datagrok.ai/js/samples/data-frame/events/events
Returns
Observable
<any
>
Defined in
plot
• get
plot(): DataFramePlotHelper
A helper for creating plots for this dataframe
Returns
Defined in
rowCount
• get
rowCount(): number
Returns number of rows in the table.
Returns
number
Defined in
selection
• get
selection(): BitSet
Returns a BitSet with selected rows.
Returns
Defined in
Methods
_event
▸ _event(event
): Observable
<any
>
Parameters
Name | Type |
---|---|
event | string |
Returns
Observable
<any
>
Defined in
append
▸ append(t2
, inPlace?
, columnsToAppend?
): DataFrame
Appends two tables ('union' in SQL).
Parameters
Name | Type | Default value | Description |
---|---|---|---|
t2 | DataFrame | undefined | |
inPlace | boolean | false | whether to create a new table, or modify 'this' one. |
columnsToAppend | null | string [] | null |
Returns
Defined in
cell
▸ cell(idx
, name
): Cell
Returns a Cell with the specified row and column.
Parameters
Name | Type | Description |
---|---|---|
idx | number | Row index. |
name | string | Column name. |
Returns
Defined in
changeColumnType
▸ changeColumnType(column
, newType
, format?
): Column
<any
>
Converts a column with the specified name to [newType], removes the original column from its dataframe and adds the new column to it.
Parameters
Name | Type | Default value |
---|---|---|
column | string | Column <any > | undefined |
newType | "string" | "bigint" | "object" | "int" | "double" | "bool" | "byte_array" | "datetime" | "qnum" | "dataframe" | undefined |
format | null | string | null |
Returns
Column
<any
>
Defined in
clone
▸ clone(rowMask?
, columnIds?
, saveSelection?
): DataFrame
Creates a new dataframe from the specified row mask and a list of columns.
Parameters
Name | Type | Default value | Description |
---|---|---|---|
rowMask | null | BitSet | null | Rows to include. |
columnIds | null | string [] | null | Columns to include. |
saveSelection | boolean | false | Whether selection should be saved. |
Returns
Defined in
col
▸ col(name
): null
| Column
<any
>
Returns a Column with the specified name.
Parameters
Name | Type | Description |
---|---|---|
name | string | Column name. |
Returns
null
| Column
<any
>
Defined in
fireValuesChanged
▸ fireValuesChanged(): void
Returns
void
Defined in
get
▸ get(name
, idx
): any
Returns idx-th value of the specified columns.
Parameters
Name | Type | Description |
---|---|---|
name | string | Column name. |
idx | number | Row index. |
Returns
any
Defined in
getCol
▸ getCol(name
): Column
<any
>
Same as col, but throws Error if column is not found
Parameters
Name | Type | Description |
---|---|---|
name | string | Column name. |
Returns
Column
<any
>
Defined in
getDensity
▸ getDensity(xBins
, yBins
, xColName
, yColName
): Int32Array
Parameters
Name | Type |
---|---|
xBins | number |
yBins | number |
xColName | string |
yColName | string |
Returns
Int32Array
Defined in
getSortedOrder
▸ getSortedOrder(sortByColumnIds
, sortOrders?
, rowMask?
): Int32Array
Returns [Int32Array] that contains sorted order, or null for unsorted (original) order. See also Column.getSortedOrder. Sample: https://public.datagrok.ai/js/samples/data-frame/sorting/sorted-order
Parameters
Name | Type | Default value | Description |
---|---|---|---|
sortByColumnIds | ColumnId [] | undefined | Collection of [Column]s to use as keys for sorting. |
sortOrders | null | boolean [] | null | List of sort orders for [sortByCols]. True == ascending. |
rowMask | null | BitSet | null | Mask of the rows to sort. Result array will contain [rowIndexes.length] elements. |
Returns
Int32Array
Defined in
getTableInfo
▸ getTableInfo(): TableInfo
Returns
Defined in
getTag
▸ getTag(tag
): null
| string
Returns the value of the specified tag, or null if it does not exist.
Parameters
Name | Type |
---|---|
tag | string |
Returns
null
| string
Defined in
groupBy
▸ groupBy(columnNames?
): GroupByBuilder
Begins building a query, using the specified columns as keys.
Parameters
Name | Type | Default value | Description |
---|---|---|---|
columnNames | string [] | [] | Names of the columns to be used as keys. |
Returns
Defined in
join
▸ join(t2
, keyColumns1
, keyColumns2
, valueColumns1
, valueColumns2
, joinType
, inPlace
): DataFrame
Merges two tables by the specified key columns.
Parameters
Name | Type | Description |
---|---|---|
t2 | DataFrame | |
keyColumns1 | string [] | |
keyColumns2 | string [] | |
valueColumns1 | string [] | |
valueColumns2 | string [] | |
joinType | "left" | "right" | "inner" | "outer" | |
inPlace | boolean | merges content in-place into the source table |
Returns
Defined in
onEvent
▸ onEvent(event
): Observable
<any
>
Parameters
Name | Type |
---|---|
event | string |
Returns
Observable
<any
>
Defined in
row
▸ row(rowIndex
): Row
Returns i-th row. NOTE: Do not use in performance-critical paths, consider accessing values via the Column instance.
Parameters
Name | Type |
---|---|
rowIndex | number |
Returns
Defined in
set
▸ set(name
, idx
, value
): void
Sets idx-th value of the specified columns.
Parameters
Name | Type | Description |
---|---|---|
name | string | Column name. |
idx | number | Row index. |
value | any | Value. |
Returns
void
Defined in
setTag
▸ setTag(tag
, value
): DataFrame
Sets a tag to the specified value.
Parameters
Name | Type | Description |
---|---|---|
tag | string | Key. |
value | string | Value. |
Returns
Defined in
toByteArray
▸ toByteArray(): Uint8Array
Exports dataframe to binary
Returns
Uint8Array
Defined in
toCsv
▸ toCsv(options?
): string
Exports the content to comma-separated-values format.
Parameters
Name | Type |
---|---|
options? | CsvExportOptions |
Returns
string
Defined in
toString
▸ toString(): string
Returns
string
Defined in
unpivot
▸ unpivot(copyColumnNames
, mergeColumnNames
, categoryColumnName?
, valueColumnName?
): DataFrame
Unpivots the table (converts from 'wide' representation with many columns to 'tall and skinny').
Parameters
Name | Type | Default value | Description |
---|---|---|---|
copyColumnNames | string [] | undefined | columns to copy |
mergeColumnNames | string [] | undefined | columns to merge. Column name will become a value in the [categoryColumnName] column, and column value will become a value in the [valueColumnName] column. |
categoryColumnName | string | 'Category' | |
valueColumnName | string | 'Value' |
Returns
Defined in
create
▸ Static
create(rowCount?
): DataFrame
Creates a DataFrame with the specified number of rows and no columns.
Parameters
Name | Type | Default value |
---|---|---|
rowCount | number | 0 |
Returns
Defined in
fromByteArray
▸ Static
fromByteArray(byteArray
): DataFrame
Parameters
Name | Type |
---|---|
byteArray | Uint8Array |
Returns
Defined in
fromColumns
▸ Static
fromColumns(columns
): DataFrame
Creates a DataFrame from the specified columns. All columns should be of the same length.
Parameters
Name | Type |
---|---|
columns | Column <any >[] |
Returns
Defined in
fromCsv
▸ Static
fromCsv(csv
, options?
): DataFrame
Constructs DataFrame from a comma-separated values string
Parameters
Name | Type | Description |
---|---|---|
csv | string | The content of the comma-separated values file. |
options? | CsvImportOptions |
Returns
https://dev.datagrok.ai/script/samples/javascript/data-frame/construction/create-from-csv
Defined in
fromJson
▸ Static
fromJson(json
): DataFrame
Constructs DataFrame from the specified JSON string.
Parameters
Name | Type | Description |
---|---|---|
json | string | JSON document. |
Returns
https://dev.datagrok.ai/script/samples/javascript/data-frame/construction/create-from-json
Defined in
fromObjects
▸ Static
fromObjects(list
): undefined
| DataFrame
Creates a [DataFrame] from a list of objects by using object keys as column names, and object values as values.
NOTE: The implementation converts the values to strings first and then parses it, so do not use this method in performance-critical paths (for instance when the number of objects could be big), consider using fromColumns instead.
Parameters
Name | Type | Description |
---|---|---|
list | object [] | List of objects. |
Returns
undefined
| DataFrame
https://dev.datagrok.ai/script/samples/javascript/data-frame/construction/create-from-objects
Defined in
fromProperties
▸ Static
fromProperties(properties
, rows?
): DataFrame
Creates a DataFrame from the specified properties with the specified row count.
Parameters
Name | Type | Default value |
---|---|---|
properties | Property [] | undefined |
rows | number | 0 |