pandas.arrays.StringArray — pandas 2.2.3 documentation (original) (raw)

class pandas.arrays.StringArray(values, copy=False)[source]#

Extension array for string data.

Warning

StringArray is considered experimental. The implementation and parts of the API may change without warning.

Parameters:

valuesarray-like

The array of data.

Warning

Currently, this expects an object-dtype ndarray where the elements are Python strings or nan-likes (None, np.nan, NA). This may change without warning in the future. Usepandas.array() with dtype="string" for a stable way of creating a StringArray from any sequence.

Changed in version 1.5.0: StringArray now accepts array-likes containing nan-likes(None, np.nan) for the values parameter in addition to strings and pandas.NA

copybool, default False

Whether to copy the array of data.

Attributes

Methods

See also

pandas.array()

The recommended function for creating a StringArray.

Series.str

The string methods are available on Series backed by a StringArray.

Notes

StringArray returns a BooleanArray for comparison methods.

Examples

pd.array(['This is', 'some text', None, 'data.'], dtype="string") ['This is', 'some text', , 'data.'] Length: 4, dtype: string

Unlike arrays instantiated with dtype="object", StringArraywill convert the values to strings.

pd.array(['1', 1], dtype="object") ['1', 1] Length: 2, dtype: object pd.array(['1', 1], dtype="string") ['1', '1'] Length: 2, dtype: string

However, instantiating StringArrays directly with non-strings will raise an error.

For comparison methods, StringArray returns a pandas.BooleanArray:

pd.array(["a", None, "c"], dtype="string") == "a" [True, , False] Length: 3, dtype: boolean