机器学习---Numpy入门

1.安装Numpy

pip install numpy

2.基本操作

import numpy as np

# 查看数组的维度和形状
a = np.array([0,1,2,3,4,5])
a
a.ndim  # 返回一个数组的维度
a.shape # 返回一个数组的形状
结果为:
array([0,1,2,3,4,5])
1
(6,)

# 更改数组的形状
b = a.reshape((3.2)) # 更改a数组的形状到二维
b
b.ndim
b.shape
结果为:
array([0,1], [2,3], [4,5])
2
(3,2)

# b的数值发生改变,a的数值也会改变
b[1][0] = 77
b
a
结果为:
array([0,1], [77,3], [4,5])
array([0,1,77,3,4,5])

# 对数组直接进行乘法
d = np.array([1,2,3,4,5])
d*2
d**2
[1,2,3,4,5]*2
结果为:
array([2,4,6,8,10)
array([1,4,9,16,25])
[1,2,3,4,5,1,2,3,4,5]

# 遍历
a[np.array(2,3,4)]
a>4 # 用布尔值的方式表示
a[a>4] # 求出a>4的数值
a[a>4] = 4 # 整理孤立点
a
a.clip(1,4) # 将数据修改到括号内的间隔范围内
a
结果为:
array([77,3,4])
array([False,False,True,False,False,True],dtype=bool)
array([77,5])
array([1,1,4,3,4,4])

# 处理不存在的值
c = np.array([1,2,np.NAN,3,4])
np.isnan(c)
c[~np.isnan(c)]
np.mean(c[~np.isnan(c)]) #求取均值
结果为:
array([False,False,True,False,False])
array([1.,2.,3.,4.])
2.5

3.NumPy和list列表
(1)NumPy的运算速度比list列表的快
(2)NumPy的灵活性不如list列表,NumPy只支持一种数据类型;list列表支持多种数据类型。

a = np.array([1,2,3])
a.dtype
结果为:
dtype('int64') # 也有可能为dtype('int32')

(3)如果的确需要使用不同的数据类型,python会强制它们使用最合理的公有的数据类型。

np.array([1, 'stringy'])
np.array([1, 'stringy', set([1,2,3])])
结果为:
array([1, 'stringy'], dtype='<U11')
array([1, 'stringy', {1,2,3}], dtype=object)

猜你喜欢

转载自blog.csdn.net/jian15093532273/article/details/80173213