Pandas Series: to_numpy() function

Values in Pandas Series or Index

A NumPy ndarray representing the values in this Series or Index.


Series.to_numpy(self, dtype=None, copy=False)
Pandas Series to_numpy() function


Name Description Type/Default Value Required / Optional
dtype The dtype to pass to numpy.asarray()
str or numpy.dtype Optional
copy Whether to ensure that the returned value is a not a view on another array. Note that copy=False does not ensure that to_numpy() is no-copy. Rather, copy=True ensure that a copy is made, even if not strictly necessary. bool
Default Value: False

Returns: numpy.ndarray


The returned array will be the same up to equality (values equal in self will be equal in the returned array; likewise for values that are not equal). When self contains an ExtensionArray, the dtype may be different. For example, for a category-dtype Series, to_numpy() will return a NumPy array and the categorical dtype will be lost.

For NumPy dtypes, this will be a reference to the actual data stored in this Series or Index (assuming copy=False). Modifying the result in place will modify the data stored in the Series or Index (not that we recommend doing that).

For extension types, to_numpy() may require copying data and coercing the result to a NumPy type (possibly object), which may be expensive. When you need a no-copy reference to the underlying data, Series.array should be used instead.

This table lays out the different dtypes and default return types of to_numpy() for various dtypes within pandas.

dtype array type
category[T] ndarray[T] (same dtype as input)
period ndarray[object] (Periods)
interval ndarray[object] (Intervals)
IntegerNA ndarray[object]
datetime64[ns] datetime64[ns]
datetime64[ns, tz] ndarray[object] (Timestamps)


Download the above Notebook from here.

Previous: Copy of Pandas object
Next: Access a single value for a row/column label pair in Pandas