将 Pandas 中的 dataframe 转换为数组(array)是一个很常见的需求。Pandas是一个基于NumPy构建的数据科学工具包,它提供了许多方便的函数将DataFrame数据转换为NumPy数组。以下是把 dataframe 转换为 array 的几种方法。
方法一:使用to_numpy函数
- to_numpy:此方法被广泛广泛使用,可以快速地将 Pandas DataFrame 转换为 NumPy array,并且可以处理 DataFrame 中的任何类型数据。
import pandas as pd
df = pd.DataFrame({
'name': ['Jack', 'Lucy', 'Mike', 'Lee'],
'age': [23, 25, 18, 20],
'gender': ['male', 'female', 'male', 'male']
})
# 使用 to_numpy 函数将 dataframe 转换成 array
arr = df.to_numpy()
print(arr)
输出:
array([['Jack', 23, 'male'],
['Lucy', 25, 'female'],
['Mike', 18, 'male'],
['Lee', 20, 'male']], dtype=object)
- 使用values属性:另一种常见方法是使用DataFrame的values属性将DataFrame转换为多维数组。但是,这种方法已被弃用,建议使用to_numpy()来替代。
import pandas as pd
df = pd.DataFrame({
'name': ['Jack', 'Lucy', 'Mike', 'Lee'],
'age': [23, 25, 18, 20],
'gender': ['male', 'female', 'male', 'male']
})
# 使用 values 属性将 dataframe 转换成 array
arr = df.values
print(arr)
输出:
array([['Jack', 23, 'male'],
['Lucy', 25, 'female'],
['Mike', 18, 'male'],
['Lee', 20, 'male']], dtype=object)
方法二:先转置再使用to_numpy方法
import pandas as pd
df = pd.DataFrame({
'name': ['Jack', 'Lucy', 'Mike', 'Lee'],
'age': [23, 25, 18, 20],
'gender': ['male', 'female', 'male', 'male']
})
# 使用 to_numpy 方法将 dataframe 转换成 array
arr = df.T.to_numpy()
print(arr)
输出:
array([['Jack', 'Lucy', 'Mike', 'Lee'],
[23, 25, 18, 20],
['male', 'female', 'male', 'male']], dtype=object)
以上是把 dataframe 转换成 array 的几种方法,使用哪一种方法请根据实际情况选择。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Pandas中把dataframe转成array的方法 - Python技术站