【Python】python 机器学习之 Numpy 使用总结(二)

简介: 【Python】python 机器学习之 Numpy 使用总结(二)

Python中Numpy库使用总结


Numpy库的使用

Numpy库和Pandas库均是python机器学习中不可缺少的一个包,其重要性我就不详细

说明,直接上干活


Numpy库的使用


Numpy库的安装


1.windown中提前安装好python,并且配置本地环境,具体方法参照百度

2.检查是否安装好pip(pip是python下一个好基友)

3.window下命令行直接 pip install numpy 就okay


矩阵的基本属性


在本文中,直接套用线性代数的中矩阵代替原文中Numpy array


1.python下使用Numpy,首先需要引入numpy库

import numpy as np
# 以下效果相同
import numpy


python下Numpy元素的类型

import numpy as np
# arange函数是生成0-14的排列 
test_numpy = np.arange(15).reshape(3, 5)
print(type(test_numpy))
# 输出的结果为 <type 'numpy.ndarray'>


ndarray.ndim 函数,求解矩阵的维数

import numpy as np
test_numpy = np.arange(15).reshape(3, 5)
test_ndim = test_numpy.ndim
print(test_ndim)
# 输出的结果为 2


ndarray.shape 函数,求解矩阵的规模,通常情况用元组表示每一维的大小,比如一个3*2的矩阵求解结果为(3,2)

import numpy as np
test_numpy = np.arange(15).reshapes(3, 5)
print(type(test_numpy.shape))
# 输出结果为 <type 'tuple'>
print(test_numpy.shape)
# 输出结果为 (3, 5) Tip:有些版本会输出(3L, 5L)


ndarray.size 函数,返回矩阵元素的个数,等于ndarray.shape元素之积

import numpy as np
test_numpy = np.arange(15).reshapes(3, 5)
print(test_numpy.size)
# 输出结果为 15


ndarray.dtype 函数,返回矩阵中元素的类型,类型可以是自己创建的类型或者是标准的python类型,在Numpy中也有自己的类型,有numpy.int32, numpy.int16, numpy.float64等等类型

import numpy as np
test_numpy = np.arange(15).reshapes(3, 5)
print(test_numpy.dtype)
# 输出结果为 dtype('int32')
print(test_numpy.dtype.name)
# 输出结果为 int32


ndarray.itemsize函数,返回矩阵中每个元素所占的字节数,如同C语言中的sizeof(int)所占4个字节,ndarray.dtype表示当前元素的类型为int32,因此占32/8=4个字节

import numpy as np
test_numpy = np.arange(15).reshapes(3, 5)
print(test_numpy.itemsize)
# 输出结果为 4


ndarray.data 返回矩阵在内存中的具体信息

import numpy as np
test_numpy = np.arange(15).reshapes(3, 5)
print(test_numpy)
# 输出结果 <read-write buffer for 0x0000000006778F30, size 60, offset 0 at 0x00000000061ADC38> 表明在内存中的具体情况


矩阵的创建


1.利用np.array()创建一个矩阵,注意array()里面是一个python列表或者元组

import numpy as np
test_numpy = np.array([1, 2, 3, 4])
# 此种方法是错误的 np.array(1, 2, 3, 4)
test_numpy_two = np.array([(1, 2, 3), (4, 5, 6)])


1.利用np.array()创建指定复杂联系元素

import numpy as np
test_numpy = np.array([1, 2], [3, 4], dtype=complex)
# test_numpy为 array([[1.+0.j, 2.+0.j], [3.+0.j, 4.+0.j]])


1.利用np.zeros()创建矩阵,利用np.zeros时一般矩阵的大小已知,但是内容未知,我们将其所有元素初始化为0

import numpy as np
test_numpy_1 = np.zeros((3, 4))
# 注意此处传入的参数是(3, 4),而非3,4
test_numpy_2 = np.zeros((3, 4), dtype=np.int32)


1.利用np.ones()创建矩阵,使用np.ones条件和np.zeros一样,不过将其所有元素初始化为1

import numpy as np
 test_numpy_1 = np.zeros((3, 4))
 test_numpy_2 = np.zeros((3, 4), dtype=np.int32)


1.利用np.arange()创建矩阵,np.arange()功能和python中的range()函数一样,生成一个序列。

import numpy as np
test_numpy = np.arange(0, 15, 1)


1.利用np.linspace()创建矩阵,np.linspace()的作用和np.arange()类似,但是略有不同,np.arange(begin, end, step)中指定起始区间,和步长,np.linspace(begin, end, num)中指定起始起始区间和需要取的数字。具体细节可以在编程中体会

import numpy as np
test_numpy = np.linspace(0, 15, 16)


1.其他函数同样可以创建矩阵,这里不一一介绍,如zeros_like, ones_like, empty, empty_like, numpy.random.rand, numpy.random.randn, fromfunction, fromfile


矩阵的打印


矩阵的打印,直接使用python中print()函数即可

import numpy as np
numpy_test = np.arange(15)
print(numpy_test)


矩阵的基本运算


矩阵的基本运算和线性代数里面矩阵的运算一致,不明白的建议翻阅《线性代数》一书


矩阵的加法、减法和数乘

import numpy as np
test_numpy_a = np.array([5, 4, 3, 2])
test_numpy_b = np.array([4, 3, 2, 1])
# 矩阵的加法
test_numpy_c = test_numpy_a + test_numpy_b
# 此时test_numpy_c为 array([9, 7, 5, 3])
# 矩阵的减法
test_numpy_d = test_numpy_a - test_numpy_b
# 此时test_numpy_d为 array([1, 1, 1, 1])
#矩阵的数乘
test_numpy_e = test_numpy_a * 2
# 此时的test_numpy_c为 array([10, 8, 6, 4])
目录
相关文章
|
3天前
|
机器学习/深度学习 人工智能 算法
【昆虫识别系统】图像识别Python+卷积神经网络算法+人工智能+深度学习+机器学习+TensorFlow+ResNet50
昆虫识别系统,使用Python作为主要开发语言。通过TensorFlow搭建ResNet50卷积神经网络算法(CNN)模型。通过对10种常见的昆虫图片数据集('蜜蜂', '甲虫', '蝴蝶', '蝉', '蜻蜓', '蚱蜢', '蛾', '蝎子', '蜗牛', '蜘蛛')进行训练,得到一个识别精度较高的H5格式模型文件,然后使用Django搭建Web网页端可视化操作界面,实现用户上传一张昆虫图片识别其名称。
107 7
【昆虫识别系统】图像识别Python+卷积神经网络算法+人工智能+深度学习+机器学习+TensorFlow+ResNet50
|
1天前
|
机器学习/深度学习 算法 数据挖掘
Python机器学习10大经典算法的讲解和示例
为了展示10个经典的机器学习算法的最简例子,我将为每个算法编写一个小的示例代码。这些算法将包括线性回归、逻辑回归、K-最近邻(KNN)、支持向量机(SVM)、决策树、随机森林、朴素贝叶斯、K-均值聚类、主成分分析(PCA)、和梯度提升(Gradient Boosting)。我将使用常见的机器学习库,如 scikit-learn,numpy 和 pandas 来实现这些算法。
|
6天前
|
机器学习/深度学习 人工智能 资源调度
机器学习之numpy基础——线性代数,不要太简单哦
机器学习之numpy基础——线性代数,不要太简单哦
34 6
|
8天前
|
Python
NumPy 是 Python 中的一个重要的科学计算包,其核心是一个强大的 N 维数组对象 Ndarray
【6月更文挑战第18天】NumPy的Ndarray是科学计算的核心,具有ndim(维度数)、shape(各维度大小)、size(元素总数)和dtype(数据类型)属性。方法包括T(转置)、ravel()(扁平化)、reshape()(改变形状)、astype()(转换数据类型)、sum()(求和)及mean()(计算平均值)。更多属性和方法如min/max等可在官方文档中探索。
31 5
|
7天前
|
机器学习/深度学习 数据采集 算法
【机器学习】Scikit-Learn:Python机器学习的瑞士军刀
【机器学习】Scikit-Learn:Python机器学习的瑞士军刀
24 3
|
7天前
|
机器学习/深度学习 机器人 Python
实践指南,终于有大佬把Python和机器学习讲明白了!
机器学习正在迅速成为数据驱动型世界的一个必备模块。许多不同的领域,如机器人、医学、零售和出版等,都需要依赖这门技术。 机器学习是近年来渐趋热门的一个领域,同时 Python 语言经过一段时间的发展也已逐渐成为主流的编程语言之一。今天给小伙伴们分享的这份手册结合了机器学习和 Python 语言两个热门的领域,通过易于理解的项目详细讲述了如何构建真实的机器学习应用程序。
|
8天前
|
Python
NumPy 是 Python 的一个强大的科学计算库,它允许你创建各种类型的数组
【6月更文挑战第18天】**NumPy**是Python的科学计算库,用于创建和操作多维数组。常用数组生成方法包括:`np.array()`从列表转换为数组;`np.zeros()`生成全零矩阵;`np.ones()`创建全一矩阵;`np.linspace()`产生等差序列;`np.arange()`创建等差数列;以及`np.eye()`生成对角线为1的二维数组。更多方法可查阅NumPy官方文档。
22 2
|
9天前
|
机器学习/深度学习 人工智能 监控
【机器学习】Python与深度学习的完美结合——深度学习在医学影像诊断中的惊人表现
【机器学习】Python与深度学习的完美结合——深度学习在医学影像诊断中的惊人表现
23 3
|
11天前
|
机器学习/深度学习 人工智能 TensorFlow
机器学习项目实战:使用Python实现图像识别
在AI时代,Python借助TensorFlow和Keras实现图像识别,尤其在监控、驾驶、医疗等领域有广泛应用。本文通过构建CNN模型识别MNIST手写数字,展示图像识别流程:安装库→加载预处理数据→构建模型→训练→评估。简单项目为深度学习入门提供基础,为进一步探索复杂场景打下基础。
27 5
|
12天前
|
存储 API C语言
Python学习笔记之NumPy模块——超详细(安装、数组创建、正态分布、索引和切片、数组的复制、维度修改、拼接、分割...)-2
Python学习笔记之NumPy模块——超详细(安装、数组创建、正态分布、索引和切片、数组的复制、维度修改、拼接、分割...)