Series.set_flags(*, copy=<no_default>, allows_duplicate_labels=None)[source]#

Return a new object with updated flags.

copybool, default False

Specify if a copy of the object should be made.


The copy keyword will change behavior in pandas 3.0. Copy-on-Write will be enabled by default, which means that all methods with a copy keyword will use a lazy copy mechanism to defer the copy and ignore the copy keyword. The copy keyword will be removed in a future version of pandas.

You can already get the future behavior and improvements through enabling copy on write pd.options.mode.copy_on_write = True

Deprecated since version 3.0.0.

allows_duplicate_labelsbool, optional

Whether the returned object allows duplicate labels.

Series or DataFrame

The same type as the caller.

See also


Global metadata applying to this dataset.


Global flags applying to this object.


This method returns a new object that’s a view on the same data as the input. Mutating the input or the output values will be reflected in the other.

This method is intended to be used in method chains.

“Flags” differ from “metadata”. Flags reflect properties of the pandas object (the Series or DataFrame). Metadata refer to properties of the dataset, and should be stored in DataFrame.attrs.


>>> df = pd.DataFrame({"A": [1, 2]})
>>> df.flags.allows_duplicate_labels
>>> df2 = df.set_flags(allows_duplicate_labels=False)
>>> df2.flags.allows_duplicate_labels