pandas.DataFrame.insert — pandas 2.2.3 documentation (original) (raw)
DataFrame.insert(loc, column, value, allow_duplicates=<no_default>)[source]#
Insert column into DataFrame at specified location.
Raises a ValueError if column is already contained in the DataFrame, unless allow_duplicates is set to True.
Parameters:
locint
Insertion index. Must verify 0 <= loc <= len(columns).
columnstr, number, or hashable object
Label of the inserted column.
valueScalar, Series, or array-like
Content of the inserted column.
allow_duplicatesbool, optional, default lib.no_default
Allow duplicate column labels to be created.
Examples
df = pd.DataFrame({'col1': [1, 2], 'col2': [3, 4]}) df col1 col2 0 1 3 1 2 4 df.insert(1, "newcol", [99, 99]) df col1 newcol col2 0 1 99 3 1 2 99 4 df.insert(0, "col1", [100, 100], allow_duplicates=True) df col1 col1 newcol col2 0 100 1 99 3 1 100 2 99 4
Notice that pandas uses index alignment in case of value from type Series:
df.insert(0, "col0", pd.Series([5, 6], index=[1, 2])) df col0 col1 col1 newcol col2 0 NaN 100 1 99 3 1 5.0 100 2 99 4