专业编程基础技术教程

网站首页 > 基础教程 正文

Python数据分析|numpy 实用方法(1)数据结构及属性

ccvgpt 2024-10-12 13:29:44 基础教程 10 ℃

NumPy的数据结构为ndarray,即一个n维的数组对象,其中所有元素必须具有相同的数据类型

ndarray的创建

  • np.array/np.asarray

import numpy as np

Python数据分析|numpy 实用方法(1)数据结构及属性

data1 = [1,2,3.2,5.8,9]

arr1 = np.array(data1)

arr1

Out[4]: array([ 1. , 2. , 3.2, 5.8, 9. ])

data2 = [[1,2,3],[3,4,7.8]]

arr2 = np.asarray(data2)

arr2

Out[10]:

array([[ 1. , 2. , 3. ],

[ 3. , 4. , 7.8]])

注:np.array和ap.asarray的区别

arr1

Out[11]: array([ 1. , 2. , 3.2, 5.8, 9. ])

arr3 = np.array(arr1)

arr4 = np.asarray(arr1)

arr3

Out[13]: array([ 1. , 2. , 3.2, 5.8, 9. ])

arr4

Out[14]: array([ 1. , 2. , 3.2, 5.8, 9. ])

arr4[2] = 100

arr4

Out[16]: array([ 1. , 2. , 100. , 5.8, 9. ])

arr3

Out[17]: array([ 1. , 2. , 3.2, 5.8, 9. ])

arr1

Out[18]: array([ 1. , 2. , 100. , 5.8, 9. ])

如上所示,arr4的值一改变,arr1的值也改变了,但是arr3的值并不受影响

  • np.arange

np.arange(8)

Out[21]: array([0, 1, 2, 3, 4, 5, 6, 7])

  • np.ones/np.ones_like

np.ones((3,4))

Out[4]:

array([[ 1., 1., 1., 1.],

[ 1., 1., 1., 1.],

[ 1., 1., 1., 1.]])

arr1 = np.array([[1,2,3],[4,5,6]])

arr1

Out[15]:

array([[1, 2, 3],

[4, 5, 6]])

np.ones_like(arr1)

Out[16]:

array([[1, 1, 1],

[1, 1, 1]])

  • eye, identity

np.eye(3)

Out[17]:

array([[ 1., 0., 0.],

[ 0., 1., 0.],

[ 0., 0., 1.]])

np.identity(4)

Out[18]:

array([[ 1., 0., 0., 0.],

[ 0., 1., 0., 0.],

[ 0., 0., 1., 0.],

[ 0., 0., 0., 1.]])

ndarray的属性

ndarray 有3个重要的属性,ndim、shape、dtype.

  • ndim

用于获取 ndarray 的维度

arr1 = np.array([[1,2,3],[4,5,6]])

arr1.ndim

Out[20]: 2

  • shape

用于获取 ndarray 的形状各维度的大小

arr1.shape

Out[21]: (2, 3)

arr1

Out[23]:

array([[1, 2, 3],

[4, 5, 6]])

arr1.reshape(3,2)

Out[24]:

array([[1, 2],

[3, 4],

[5, 6]])

  • dtype

用于获取ndarray的数据类型

arr1.dtype

Out[22]: dtype('int32')

最近发表
标签列表