pyspark.pandas.DataFrame.rename#
- DataFrame.rename(mapper=None, index=None, columns=None, axis='index', inplace=False, level=None, errors='ignore')[source]#
Alter axes labels. Function / dict values must be unique (1-to-1). Labels not contained in a dict / Series will be left as-is. Extra labels listed don’t throw an error.
- Parameters
- mapperdict-like or function
Dict-like or functions transformations to apply to that axis’ values. Use either mapper and axis to specify the axis to target with mapper, or index and columns.
- indexdict-like or function
Alternative to specifying axis (“mapper, axis=0” is equivalent to “index=mapper”).
- columnsdict-like or function
Alternative to specifying axis (“mapper, axis=1” is equivalent to “columns=mapper”).
- axisint or str, default ‘index’
Axis to target with mapper. Can be either the axis name (‘index’, ‘columns’) or number (0, 1).
- inplacebool, default False
Whether to return a new DataFrame.
- levelint or level name, default None
In case of a MultiIndex, only rename labels in the specified level.
- errors{‘ignore’, ‘raise’}, default ‘ignore’
If ‘raise’, raise a KeyError when a dict-like mapper, index, or columns contains labels that are not present in the Index being transformed. If ‘ignore’, existing keys will be renamed, and extra keys will be ignored.
- Returns
- DataFrame with the renamed axis labels.
- Raises
- KeyError
If any of the labels is not found in the selected axis and “errors=’raise’”.
Examples
>>> psdf1 = ps.DataFrame({"A": [1, 2, 3], "B": [4, 5, 6]}) >>> psdf1.rename(columns={"A": "a", "B": "c"}) a c 0 1 4 1 2 5 2 3 6
>>> psdf1.rename(index={1: 10, 2: 20}) A B 0 1 4 10 2 5 20 3 6
>>> psdf1.rename(columns={"A": "a", "C": "c"}, errors="raise") Traceback (most recent call last): ... KeyError: 'Index include value which is not in the `mapper`'
>>> def str_lower(s) -> str: ... return str.lower(s) >>> psdf1.rename(str_lower, axis='columns') a b 0 1 4 1 2 5 2 3 6
>>> def mul10(x) -> int: ... return x * 10 >>> psdf1.rename(mul10, axis='index') A B 0 1 4 10 2 5 20 3 6
>>> idx = pd.MultiIndex.from_tuples([('X', 'A'), ('X', 'B'), ('Y', 'C'), ('Y', 'D')]) >>> psdf2 = ps.DataFrame([[1, 2, 3, 4], [5, 6, 7, 8]], columns=idx) >>> psdf2.rename(columns=str_lower, level=0) x y A B C D 0 1 2 3 4 1 5 6 7 8
>>> psdf3 = ps.DataFrame([[1, 2], [3, 4], [5, 6], [7, 8]], index=idx, columns=list('ab')) >>> psdf3.rename(index=str_lower) a b x a 1 2 b 3 4 y c 5 6 d 7 8