DataFrame.setIndex
Set the DataFrame index using existing columns or an array (of the equal length).
danfo.DataFrame.setIndex(options) [source]
Parameters
Type
Description
Default
options
Object
{
index: An array of index values to set.
column: A column name to set the index to.
drop: Whether to drop the column whose index was set. Defaults to false.
inplace: Boolean indicating whether to perform the operation inplace or not. Defaults to false
}
{drop: false, **inplace:**false}
Examples
Setting index to a column in the DataFrame
const dfd = require("danfojs-node")
let data = { "A": [-20, 30, 47.3],
"B": [34, 5, 6],
"C": [20, 3, 30] }
let df = new dfd.DataFrame(data, {index: ["a", "b", "c"]})
df.print()
df.setIndex({column: "A", inplace: true})
df.print()
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
║ │ A │ B │ C ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ a │ -20 │ 34 │ 20 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ b │ 30 │ 5 │ 3 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ c │ 47.3 │ 6 │ 30 ║
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
║ │ A │ B │ C ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ -20 │ -20 │ 34 │ 20 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ 30 │ 30 │ 5 │ 3 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ 47.3 │ 47.3 │ 6 │ 30 ║
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
Setting index to a column in the DataFrame and dropping the column
const dfd = require("danfojs-node")
let data = { "A": [-20, 30, 47.3],
"B": [34, 5, 6],
"C": [20, 3, 30] }
let df = new dfd.DataFrame(data, {index: ["a", "b", "c"]})
df.print()
df.setIndex({column: "A", drop: true, inplace: true})
df.print()
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
║ │ A │ B │ C ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ a │ -20 │ 34 │ 20 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ b │ 30 │ 5 │ 3 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ c │ 47.3 │ 6 │ 30 ║
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
╔════════════╤═══════════════════╤═══════════════════╗
║ │ B │ C ║
╟────────────┼───────────────────┼───────────────────╢
║ -20 │ 34 │ 20 ║
╟────────────┼───────────────────┼───────────────────╢
║ 30 │ 5 │ 3 ║
╟────────────┼───────────────────┼───────────────────╢
║ 47.3 │ 6 │ 30 ║
╚════════════╧═══════════════════╧═══════════════════╝
Set index to an array of the same length
const dfd = require("danfojs-node")
let data = { "A": [-20, 30, 47.3],
"B": [34, -5, 6],
"C": [20, 3, 30] }
let df = new dfd.DataFrame(data)
df.print()
let new_index = ["a", "b", "c"]
df.setIndex({index: new_index, inplace: true})
df.print()
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
║ │ A │ B │ C ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ 0 │ -20 │ 34 │ 20 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ 1 │ 30 │ -5 │ 3 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ 2 │ 47.3 │ 6 │ 30 ║
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
╔════════════╤═══════════════════╤═══════════════════╤═══════════════════╗
║ │ A │ B │ C ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ a │ -20 │ 34 │ 20 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ b │ 30 │ -5 │ 3 ║
╟────────────┼───────────────────┼───────────────────┼───────────────────╢
║ c │ 47.3 │ 6 │ 30 ║
╚════════════╧═══════════════════╧═══════════════════╧═══════════════════╝
Note: To reset an index to the default values, use the DataFrame.resetIndex.
Last updated