pandas.DataFrame.to_numpy()是将Pandas DataFrame对象转换为NumPy数组的方法。它会返回一个NumPy数组,其中包含DataFrame中的所有数据。如果DataFrame中的所有列都是数值类型,那么返回的数组的dtype为numpy.float64。
使用方法:
DataFrame.to_numpy(dtype=None, copy=False, na_value=<class 'float'>)
参数说明:
- dtype:用于数组的数据类型,默认为None。
- copy:默认为False,在某些情况下,数据是复制而不是视图。
- na_value:要替换的缺失值标记,默认为numpy.nan。
示例:
将DataFrame转换为NumPy数组
import pandas as pd
import numpy as np
# 构造数据
data = {'名称': ['苹果','橘子','香蕉','菠萝'],
'数量': [10, 8, 20, np.nan],
'价格': [3.2, 2.5, np.nan, 6.8],
'质量': ['优', '良', '优', '良']}
df = pd.DataFrame(data)
# DataFrame显示
print(df)
# DataFrame转换为NumPy数组
arr = df.to_numpy()
# 输出NumPy数组
print(arr)
输出:
名称 数量 价格 质量
0 苹果 10.0 3.2 优
1 橘子 8.0 2.5 良
2 香蕉 20.0 NaN 优
3 菠萝 NaN 6.8 良
array([['苹果', 10.0, 3.2, '优'],
['橘子', 8.0, 2.5, '良'],
['香蕉', 20.0, nan, '优'],
['菠萝', nan, 6.8, '良']], dtype=object)
将DataFrame转换为NumPy数组,并指定dtype
# 指定dtype
arr = df.to_numpy(dtype='float')
# 输出NumPy数组
print(arr)
输出:
array([[10. , 3.2, nan],
[ 8. , 2.5, nan],
[20. , nan, nan],
[nan, 6.8, nan]])
在这个示例中,指定了将DataFrame转换为NumPy数组时的数据类型,将所有缺失值转换为nan。可以看到,如果DataFrame中的某些列包含缺失值,则转换后的数组中会显示nan。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解pandas.DataFrame.to_numpy()(将数据框转换为NumPy数组)函数使用方法 - Python技术站