pandas.DataFrame.to_numpy#

DataFrame.to_numpy(dtype=None, copy=False, na_value=_NoDefault.no_default)[源代码]#

将 DataFrame 转换为 NumPy 数组。

默认情况下,返回数组的 dtype 将是 DataFrame 中所有类型的通用 NumPy dtype。例如,如果 dtype 是 float16float32,则结果 dtype 将是 float32。这可能需要复制数据和强制转换值,这可能很昂贵。

Parameters:
dtypestr 或 numpy.dtype,可选

传递给 numpy.asarray() 的 dtype。

copybool,默认 False

是否确保返回值不是另一个数组的视图。请注意,copy=False 确保 to_numpy() 是无副本的。相反,copy=True 确保创建副本,即使不是严格必需的。

na_value任意类型,可选

用于缺失值的 the value。默认值取决于 dtype 和 DataFrame 列的 dtype。

Returns:
numpy.ndarray

参见

Series.to_numpy

Series 的类似方法。

Examples

>>> pd.DataFrame({"A": [1, 2], "B": [3, 4]}).to_numpy()
array([[1, 3],
       [2, 4]])

对于异构数据,将需要使用最低公共类型。

>>> df = pd.DataFrame({"A": [1, 2], "B": [3.0, 4.5]})
>>> df.to_numpy()
array([[1. , 3. ],
       [2. , 4.5]])

对于数字和非数字类型的混合,输出数组将具有 object dtype。

>>> df['C'] = pd.date_range('2000', periods=2)
>>> df.to_numpy()
array([[1, 3.0, Timestamp('2000-01-01 00:00:00')],
       [2, 4.5, Timestamp('2000-01-02 00:00:00')]], dtype=object)