Pandas DataFrame | set_axis method
Start your free 7-days trial now!
Pandas's DataFrame.set_axis(~)
method assigns a new label to the source DataFrame's columns or index.
Parameters
1. labels
| list-like
or index
The new column or index labels.
2. axis
| string
or int
| optional
Whether to set a new column label or an index label:
Axis | Description |
---|---|
| Set new row labels |
| Set new column labels |
By default, axis=0
.
3. inplace
| boolean
| optional
Whether or not to perform the method in-place:
If
True
, then the source DataFrame will be directly modified, and no new DataFrame will be created.If
False
, then a new DataFrame is created and returned.
By default, inplace=False
.
Return value
A DataFrame with either new column or index labels. Note that if inplace=True
, then nothing is returned since the source DataFrame is directly modified.
Examples
Consider the following DataFrame:
df = pd.DataFrame({"A":[3,4],"B":[5,6]})df
A B0 3 51 4 6
Setting new index labels using a list
To assign new index labels (i.e. row labels) using a list:
df.set_axis(["a","b"])
A Ba 3 5b 4 6
Setting new index labels using Index object
To assign new index labels (i.e. row labels) using an index object:
index_date = pd.date_range("2020-12-25", periods=2)df.set_axis(index_date)
A B2020-12-25 3 52020-12-26 4 6
Here, we are assigning a DateTime Index.
Setting new column labels
To assign new column labels, set axis=1
:
df.set_axis(["C","D"], axis=1)
C D0 3 51 4 6