Skip to content

OwidTable

Extends

Constructors

Constructor

new OwidTable(
   input?, 
   inputColumnDefs?, 
   advancedOptions?): OwidTable;

Parameters

Parameter Type
input? CoreTableInputOption
inputColumnDefs? string | OwidColumnDef[]
advancedOptions? AdvancedOptions

Returns

OwidTable

Inherited from

CoreTable<OwidRow, OwidColumnDef>.constructor

Properties

Property Type
tableDescription string

Accessors

autodetectedColumnDefs

Get Signature

get autodetectedColumnDefs(): CoreTable;
Returns

CoreTable

Inherited from

CoreTable.autodetectedColumnDefs

transformCategory

Get Signature

get transformCategory(): TransformType;
Returns

TransformType

Inherited from

CoreTable.transformCategory

canReuseInputColumnStore

Get Signature

get canReuseInputColumnStore(): boolean;
Returns

boolean

Inherited from

CoreTable.canReuseInputColumnStore

columnStore

Get Signature

get columnStore(): CoreColumnStore;
Returns

CoreColumnStore

Inherited from

CoreTable.columnStore

tableSlug

Get Signature

get tableSlug(): string | undefined;
Returns

string | undefined

Inherited from

CoreTable.tableSlug

rows

Get Signature

get rows(): ROW_TYPE[];
Returns

ROW_TYPE[]

Inherited from

CoreTable.rows

indices

Get Signature

get indices(): number[];
Returns

number[]

Inherited from

CoreTable.indices

firstRow

Get Signature

get firstRow(): ROW_TYPE;
Returns

ROW_TYPE

Inherited from

CoreTable.firstRow

lastRow

Get Signature

get lastRow(): ROW_TYPE;
Returns

ROW_TYPE

Inherited from

CoreTable.lastRow

numRows

Get Signature

get numRows(): number;
Returns

number

Inherited from

CoreTable.numRows

numColumns

Get Signature

get numColumns(): number;
Returns

number

Inherited from

CoreTable.numColumns

timeColumn

Get Signature

get timeColumn(): 
  | TimeColumn<CoreTable<CoreRow, CoreColumnDef>, CoreColumnDef>
  | MissingColumn<CoreTable<CoreRow, CoreColumnDef>, CoreColumnDef>;
Returns

| TimeColumn<CoreTable<CoreRow, CoreColumnDef>, CoreColumnDef> | MissingColumn<CoreTable<CoreRow, CoreColumnDef>, CoreColumnDef>

Inherited from

CoreTable.timeColumn

numColumnsWithErrorValues

Get Signature

get numColumnsWithErrorValues(): number;
Returns

number

Inherited from

CoreTable.numColumnsWithErrorValues

numErrorValues

Get Signature

get numErrorValues(): number;
Returns

number

Inherited from

CoreTable.numErrorValues

numValidCells

Get Signature

get numValidCells(): number;
Returns

number

Inherited from

CoreTable.numValidCells

colStoreIsEqualToParent

Get Signature

get colStoreIsEqualToParent(): boolean;
Returns

boolean

Inherited from

CoreTable.colStoreIsEqualToParent

rootTable

Get Signature

get rootTable(): this;
Returns

this

Inherited from

CoreTable.rootTable

defs

Get Signature

get defs(): COL_DEF_TYPE[];
Returns

COL_DEF_TYPE[]

Inherited from

CoreTable.defs

columnNames

Get Signature

get columnNames(): string[];
Returns

string[]

Inherited from

CoreTable.columnNames

columnTypes

Get Signature

get columnTypes(): (ColumnTypeNames | undefined)[];
Returns

(ColumnTypeNames | undefined)[]

Inherited from

CoreTable.columnTypes

columnJsTypes

Get Signature

get columnJsTypes(): JsTypes[];
Returns

JsTypes[]

Inherited from

CoreTable.columnJsTypes

columnSlugs

Get Signature

get columnSlugs(): string[];
Returns

string[]

Inherited from

CoreTable.columnSlugs

numericColumnSlugs

Get Signature

get numericColumnSlugs(): string[];
Returns

string[]

Inherited from

CoreTable.numericColumnSlugs

columnsAsArray

Get Signature

get columnsAsArray(): CoreColumn<this, COL_DEF_TYPE>[];
Returns

CoreColumn<this, COL_DEF_TYPE>[]

Inherited from

CoreTable.columnsAsArray

ancestors

Get Signature

get ancestors(): this[];
Returns

this[]

Inherited from

CoreTable.ancestors

availableEntityNames

Get Signature

get availableEntityNames(): any[];
Returns

any[]


availableEntityNameSet

Get Signature

get availableEntityNameSet(): Set<string>;
Returns

Set<string>


entityNameColumn

Get Signature

get entityNameColumn(): OwidColumn;
Returns

OwidColumn


entityNameSlug

Get Signature

get entityNameSlug(): string;
Returns

string


entityCodeColumn

Get Signature

get entityCodeColumn(): OwidColumn;
Returns

OwidColumn


entityCodeSlug

Get Signature

get entityCodeSlug(): string;
Returns

string


entityIdColumn

Get Signature

get entityIdColumn(): OwidColumn;
Returns

OwidColumn


entityIdSlug

Get Signature

get entityIdSlug(): string;
Returns

string


minTime

Get Signature

get minTime(): number | undefined;
Returns

number | undefined


maxTime

Get Signature

get maxTime(): number | undefined;
Returns

number | undefined


timeRange

Get Signature

get timeRange(): TimeRange | undefined;

The first and last time in the table, undefined if it has no times

Returns

TimeRange | undefined


rowIndicesByEntityName

Get Signature

get rowIndicesByEntityName(): Map<string, number[]>;
Returns

Map<string, number[]>


entityNameColorIndex

Get Signature

get entityNameColorIndex(): Map<string, string>;
Returns

Map<string, string>


entityNameToCodeMap

Get Signature

get entityNameToCodeMap(): Map<string, string>;
Returns

Map<string, string>


columnDisplayNameToColorMap

Get Signature

get columnDisplayNameToColorMap(): Map<string, string>;
Returns

Map<string, string>


isBlank

Get Signature

get isBlank(): boolean;
Returns

boolean

Methods

[iterator]()

iterator: Generator<CoreRow, void, unknown>;

Returns

Generator<CoreRow, void, unknown>

Inherited from

CoreTable.[iterator]

getTimesAtIndices()

getTimesAtIndices(indices): number[];

Parameters

Parameter Type
indices number[]

Returns

number[]

Inherited from

CoreTable.getTimesAtIndices

getValuesAtIndices()

getValuesAtIndices(columnSlug, indices): CoreValueType[];

Parameters

Parameter Type
columnSlug string
indices number[]

Returns

CoreValueType[]

Inherited from

CoreTable.getValuesAtIndices

get()

get(columnSlug): CoreColumn<OwidTable, OwidColumnDef>;

Parameters

Parameter Type
columnSlug string | undefined

Returns

CoreColumn<OwidTable, OwidColumnDef>

Inherited from

CoreTable.get

has()

has(columnSlug): boolean;

Parameters

Parameter Type
columnSlug string | undefined

Returns

boolean

Inherited from

CoreTable.has

getFirstColumnWithType()

getFirstColumnWithType(columnTypeName): 
  | CoreColumn<OwidTable, OwidColumnDef>
  | undefined;

Parameters

Parameter Type
columnTypeName ColumnTypeNames

Returns

| CoreColumn<OwidTable, OwidColumnDef> | undefined

Inherited from

CoreTable.getFirstColumnWithType

rowIndex()

rowIndex(columnSlugs): Map<string, number[]>;

Returns a string map (aka index) where the keys are the combined string values of columnSlug[], and the values are the indices for the rows that match.

{country: "USA", population: 100}

So table.rowIndex(["country", "population"]).get("USA 100") would return [0].

Parameters

Parameter Type
columnSlugs string[]

Returns

Map<string, number[]>

Inherited from

CoreTable.rowIndex

grep()

grep(searchStringOrRegex): this;

Parameters

Parameter Type
searchStringOrRegex string | RegExp

Returns

this

Inherited from

CoreTable.grep

rowFilter()

rowFilter(predicate, opName): this;

Parameters

Parameter Type
predicate (row, index) => boolean
opName string

Returns

this

Inherited from

CoreTable.rowFilter

columnFilter()

columnFilter(
   columnSlug, 
   predicate, 
   opName): this;

Parameters

Parameter Type
columnSlug string
predicate (value, index) => boolean
opName string

Returns

this

Inherited from

CoreTable.columnFilter

sortBy()

sortBy(slugs): this;

Parameters

Parameter Type
slugs string[]

Returns

this

Inherited from

CoreTable.sortBy

getColumns()

getColumns(slugs): CoreColumn<OwidTable, OwidColumnDef>[];

Parameters

Parameter Type
slugs string[]

Returns

CoreColumn<OwidTable, OwidColumnDef>[]

Inherited from

CoreTable.getColumns

domainFor()

domainFor(slugs): ValueRange;

Parameters

Parameter Type
slugs string[]

Returns

ValueRange

Inherited from

CoreTable.domainFor

dump()

dump(rowLimit?): void;

Parameters

Parameter Type
rowLimit? number

Returns

void

Inherited from

CoreTable.dump

dumpPipeline()

dumpPipeline(): void;

Returns

void

Inherited from

CoreTable.dumpPipeline

dumpColumns()

dumpColumns(): void;

Returns

void

Inherited from

CoreTable.dumpColumns

rowsFrom()

rowsFrom(start, end): any;

Parameters

Parameter Type
start number
end number

Returns

any

Inherited from

CoreTable.rowsFrom

dumpRows()

dumpRows(rowLimit?): void;

Parameters

Parameter Type
rowLimit? number

Returns

void

Inherited from

CoreTable.dumpRows

dumpInputTable()

dumpInputTable(): void;

Returns

void

Inherited from

CoreTable.dumpInputTable

rowsAt()

rowsAt(indices): OwidRow[];

Parameters

Parameter Type
indices number[]

Returns

OwidRow[]

Inherited from

CoreTable.rowsAt

findRows()

findRows(query): OwidRow[];

Parameters

Parameter Type
query CoreQuery

Returns

OwidRow[]

Inherited from

CoreTable.findRows

findRowsIndices()

findRowsIndices(query): any;

Parameters

Parameter Type
query CoreQuery

Returns

any

Inherited from

CoreTable.findRowsIndices

indexOf()

indexOf(row): any;

Parameters

Parameter Type
row OwidRow

Returns

any

Inherited from

CoreTable.indexOf

where()

where(query): this;

Parameters

Parameter Type
query CoreQuery

Returns

this

Inherited from

CoreTable.where

appendRows()

appendRows(rows, opDescription): this;

Parameters

Parameter Type
rows OwidRow[]
opDescription string

Returns

this

Inherited from

CoreTable.appendRows

updateDefs()

updateDefs(fn): this;

Parameters

Parameter Type
fn (def) => OwidColumnDef

Returns

this

Inherited from

CoreTable.updateDefs

select()

select(slugs): this;

Parameters

Parameter Type
slugs string[]

Returns

this

Inherited from

CoreTable.select

dropColumns()

dropColumns(slugs, message?): this;

Parameters

Parameter Type
slugs string[]
message? string

Returns

this

Inherited from

CoreTable.dropColumns

isRowEmpty()

isRowEmpty(index): boolean;

Parameters

Parameter Type
index number

Returns

boolean

Inherited from

CoreTable.isRowEmpty

dropEmptyRows()

dropEmptyRows(): this;

Returns

this

Inherited from

CoreTable.dropEmptyRows

dropRowsWithErrorValuesForAnyColumn()

dropRowsWithErrorValuesForAnyColumn(slugs): this;

Parameters

Parameter Type
slugs string[]

Returns

this

Inherited from

CoreTable.dropRowsWithErrorValuesForAnyColumn

dropRowsWithErrorValuesForAllColumns()

dropRowsWithErrorValuesForAllColumns(slugs): this;

Parameters

Parameter Type
slugs string[]

Returns

this

Inherited from

CoreTable.dropRowsWithErrorValuesForAllColumns

renameColumn()

renameColumn(oldSlug, newSlug): this;

Parameters

Parameter Type
oldSlug string
newSlug string

Returns

this

Inherited from

CoreTable.renameColumn

renameColumns()

renameColumns(columnRenameMap): this;

Parameters

Parameter Type
columnRenameMap { [columnSlug: string]: string; }

Returns

this

Inherited from

CoreTable.renameColumns

dropRowsAt()

dropRowsAt(indices, message?): this;

Parameters

Parameter Type
indices number[]
message? string

Returns

this

Inherited from

CoreTable.dropRowsAt

replaceCells()

replaceCells(columnSlugs, replaceFn): this;

Parameters

Parameter Type
columnSlugs string[]
replaceFn (val, index) => CoreValueType

Returns

this

Inherited from

CoreTable.replaceCells

combineColumns()

combineColumns(
   columnSlugs, 
   def, 
   combineFn): this;

Parameters

Parameter Type
columnSlugs string[]
def OwidColumnDef
combineFn (row, time) => CoreValueType

Returns

this

Inherited from

CoreTable.combineColumns

replaceNonPositiveCellsForLogScale()

replaceNonPositiveCellsForLogScale(columnSlugs?): this;

Parameters

Parameter Type
columnSlugs? string[]

Returns

this

Inherited from

CoreTable.replaceNonPositiveCellsForLogScale

replaceNegativeCellsWithErrorValues()

replaceNegativeCellsWithErrorValues(columnSlugs?): this;

Parameters

Parameter Type
columnSlugs? string[]

Returns

this

Inherited from

CoreTable.replaceNegativeCellsWithErrorValues

replaceNonNumericCellsWithErrorValues()

replaceNonNumericCellsWithErrorValues(columnSlugs): this;

Parameters

Parameter Type
columnSlugs string[]

Returns

this

Inherited from

CoreTable.replaceNonNumericCellsWithErrorValues

replaceRandomCells()

replaceRandomCells(
   howMany?, 
   columnSlugs?, 
   seed?, 
   replacementGenerator?): this;

Parameters

Parameter Type
howMany? number
columnSlugs? string[]
seed? number
replacementGenerator? () => any

Returns

this

Inherited from

CoreTable.replaceRandomCells

appendColumns()

appendColumns(defs): this;

Parameters

Parameter Type
defs OwidColumnDef[]

Returns

this

Inherited from

CoreTable.appendColumns

duplicateColumn()

duplicateColumn(slug, overrides): this;

Parameters

Parameter Type
slug string
overrides OwidColumnDef

Returns

this

Inherited from

CoreTable.duplicateColumn

appendColumnsIfNew()

appendColumnsIfNew(defs): this;

Parameters

Parameter Type
defs OwidColumnDef[]

Returns

this

Inherited from

CoreTable.appendColumnsIfNew

toMatrix()

toMatrix(): any[][];

Returns

any[][]

Inherited from

CoreTable.toMatrix

toTypedMatrix()

toTypedMatrix(): any[][];

Returns

any[][]

Inherited from

CoreTable.toTypedMatrix

concat()

concat(tables, message?): this;

Parameters

Parameter Type
tables CoreTable<CoreRow, CoreColumnDef>[]
message? string

Returns

this

Inherited from

CoreTable.concat

complete()

complete(columnSlugs): this;

Ensure a row exists for all values in columnSlug1 × columnSlug2 × ...

For example, if we have a table:

entityName, year, …
UK, 2000, …
UK, 2005, …
USA, 2003, …

After complete(["entityName", "year"]), we'd get:

entityName, year, …
UK, 2000, …
UK, 2003, …
UK, 2005, …
USA, 2000, …
USA, 2003, …
USA, 2005, …

Parameters

Parameter Type
columnSlugs [string, string]

Returns

this

Inherited from

CoreTable.complete

getPreposition()

static getPreposition(col): string;

Parameters

Parameter Type
col | CoreColumn<CoreTable<CoreRow, CoreColumnDef>, CoreColumnDef> | TimeColumn<CoreTable<CoreRow, CoreColumnDef>, CoreColumnDef>

Returns

string

Inherited from

CoreTable.getPreposition

isOwidTable()

isOwidTable(): boolean;

Returns

boolean

Overrides

CoreTable.isOwidTable

fromUrl()

static fromUrl(url, columnDefs?): Promise<OwidTable>;

Parameters

Parameter Type
url string
columnDefs? OwidColumnDef[]

Returns

Promise<OwidTable>


getAnnotationColumnSlug()

getAnnotationColumnSlug(columnDef): string | undefined;

Parameters

Parameter Type
columnDef OwidColumnDef

Returns

string | undefined


getAnnotationColumnForColumn()

getAnnotationColumnForColumn(columnSlug): OwidColumn;

Parameters

Parameter Type
columnSlug string

Returns

OwidColumn


getTimesUniqSortedAscForColumns()

getTimesUniqSortedAscForColumns(columnSlugs): number[];

Parameters

Parameter Type
columnSlugs string[]

Returns

number[]


timeDomainFor()

timeDomainFor(slugs): [number | undefined, number | undefined];

Parameters

Parameter Type
slugs string[]

Returns

[number | undefined, number | undefined]


originalTimeDomainFor()

originalTimeDomainFor(slugs): [number | undefined, number | undefined];

Parameters

Parameter Type
slugs string[]

Returns

[number | undefined, number | undefined]


filterByEntityNames()

filterByEntityNames(names): this;

Parameters

Parameter Type
names string[]

Returns

this


filterByEntityNamesUsingIncludeExcludePattern()

filterByEntityNamesUsingIncludeExcludePattern(__namedParameters): this;

Parameters

Parameter Type
__namedParameters { excluded?: string[]; included?: string[]; }
__namedParameters.excluded? string[]
__namedParameters.included? string[]

Returns

this


filterByTimeRange()

filterByTimeRange(start, end): this;

Parameters

Parameter Type
start number
end number

Returns

this


filterByTargetTimes()

filterByTargetTimes(targetTimes, tolerance?): this;

Parameters

Parameter Type
targetTimes number[]
tolerance? number

Returns

this


hasAnyColumnNoValidValue()

hasAnyColumnNoValidValue(slugs): boolean;

Parameters

Parameter Type
slugs string[]

Returns

boolean


dropAllRows()

dropAllRows(): this;

Returns

this


dropRowsWithErrorValuesForColumn()

dropRowsWithErrorValuesForColumn(slug): this;

Parameters

Parameter Type
slug string

Returns

this


dropEntitiesThatHaveNoDataInSomeColumn()

dropEntitiesThatHaveNoDataInSomeColumn(columnSlugs): this;

Parameters

Parameter Type
columnSlugs string[]

Returns

this


dropEntitiesThatHaveSomeMissingOrErrorValueInAllColumns()

dropEntitiesThatHaveSomeMissingOrErrorValueInAllColumns(columnSlugs): this;

Parameters

Parameter Type
columnSlugs string[]

Returns

this


toPercentageFromEachEntityForEachTime()

toPercentageFromEachEntityForEachTime(columnSlug): this;

Parameters

Parameter Type
columnSlug string

Returns

this


toPercentageFromEachColumnForEachEntityAndTime()

toPercentageFromEachColumnForEachEntityAndTime(columnSlugs): this;

Parameters

Parameter Type
columnSlugs string[]

Returns

this


toTotalGrowthForEachColumnComparedToStartTime()

toTotalGrowthForEachColumnComparedToStartTime(startTimeBound, columnSlugs): this;

Parameters

Parameter Type
startTimeBound number
columnSlugs string[]

Returns

this


keepMinTimeAndMaxTimeForEachEntityOnly()

keepMinTimeAndMaxTimeForEachEntityOnly(): this;

Returns

this


toAverageAnnualChangeForEachEntity()

toAverageAnnualChangeForEachEntity(columnSlugs): this;

Parameters

Parameter Type
columnSlugs string[]

Returns

this


toPrettyCsv()

toPrettyCsv(options?): string;

Parameters

Parameter Type
options? { excludeColumns?: string[]; sortBy?: string[]; useShortNames?: boolean; }
options.excludeColumns? string[]
options.sortBy? string[]
options.useShortNames? boolean

Returns

string


toCsv()

toCsv(options?): string;

Parameters

Parameter Type
options? { delimiter?: string; formatColumnName?: (col) => string; }
options.delimiter? string
options.formatColumnName? (col) => string

Returns

string


getColorForEntityName()

getColorForEntityName(entityName): string | undefined;

Parameters

Parameter Type
entityName string

Returns

string | undefined


getLatestValueForEntity()

getLatestValueForEntity(entityName, columnSlug): CoreValueType | undefined;

Parameters

Parameter Type
entityName string
columnSlug string

Returns

CoreValueType | undefined


entitiesWith()

entitiesWith(columnSlugs): Set<string>;

Parameters

Parameter Type
columnSlugs string[]

Returns

Set<string>


interpolateColumnWithTolerance()

interpolateColumnWithTolerance(columnSlug, __namedParameters?): this;

Parameters

Parameter Type
columnSlug string
__namedParameters? ToleranceOptions

Returns

this


interpolateColumnLinearly()

interpolateColumnLinearly(columnSlug, extrapolate?): this;

Parameters

Parameter Type
columnSlug string
extrapolate? boolean

Returns

this


interpolateColumnsByClosestTimeMatch()

interpolateColumnsByClosestTimeMatch(columnSlugA, columnSlugB): this;

Parameters

Parameter Type
columnSlugA string
columnSlugB string

Returns

this


sampleEntityName()

sampleEntityName(howMany?): any[];

Parameters

Parameter Type
howMany? number

Returns

any[]