Numpy中如何从Pandas dataframe创建2D数组

Numpy中如何从Pandas dataframe创建2D数组

在本文中,我们将介绍如何使用Numpy从Pandas dataframe创建2D数组。Numpy是Python的一个重要的数学库,它可以帮助我们进行高效的数值计算和数据分析。而Pandas是基于Numpy的数据分析库,它提供了非常方便的数据结构和数据分析工具。

首先,我们需要导入Numpy和Pandas库,并创建一个示例dataframe:

import numpy as np
import pandas as pd

df = pd.DataFrame(np.random.randint(0, 10, size=(5, 2)), columns=list('AB'))
print(df)
Python

输出结果:

   A  B
0  7  3
1  9  0
2  6  7
3  2  5
4  2  2
Python

接下来,我们可以使用Numpy的array()函数从dataframe创建2D数组:

arr = np.array(df)
print(arr)
Python

输出结果:

[[7 3]
 [9 0]
 [6 7]
 [2 5]
 [2 2]]
Python

这样我们就成功地从Pandas dataframe创建了一个2D数组。值得注意的是,这个2D数组中的元素类型是int64,和Pandas dataframe中的元素类型是一致的。

如果我们希望创建一个浮点数类型的2D数组,可以使用astype()函数进行类型转换:

arr = np.array(df).astype(float)
print(arr)
Python

输出结果:

[[7. 3.]
 [9. 0.]
 [6. 7.]
 [2. 5.]
 [2. 2.]]
Python

除了从Pandas dataframe创建2D数组,我们还可以从其他的数据结构创建2D数组。例如,我们可以使用Python内置的list数据结构创建一个二维列表(也可以是Numpy的ndarray数组),然后再使用Numpy的array()函数将其转换为2D数组。

arr_list = [[1, 2], [3, 4], [5, 6]]
arr = np.array(arr_list)
print(arr)
Python

输出结果:

[[1 2]
 [3 4]
 [5 6]]
Python

与此相似的,我们还可以使用Python的tuple数据结构创建一个二元组(也可以是Numpy的ndarray数组),然后再使用Numpy的array()函数将其转换为2D数组。

arr_tuple = ((1, 2), (3, 4), (5, 6))
arr = np.array(arr_tuple)
print(arr)
Python

输出结果:

[[1 2]
 [3 4]
 [5 6]]
Python

阅读更多:Numpy 教程

总结

本文介绍了如何使用Numpy从Pandas dataframe创建2D数组,以及从其他的数据结构创建2D数组的方法。使用Numpy可以方便地进行高效的数值计算和数据分析。如果您还没有学习Numpy和Pandas,建议您先学习这两个库的基础知识,再深入了解它们的高级功能和用法。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册