Numpy概述

1.使用numpy打开txt文件并且读取文件内容

world_alcohol = np.genfromtxt("world_alcohol.txt", delimiter=",", dtype=str),参数一:文件路径;参数二:分割标记;参数三:数据类型;
import numpy as npworld_alcohol = np.genfromtxt("world_alcohol.txt", delimiter=",", dtype=str)
print (world_alcohol)

2.使用numpy构建一维矩阵

vector = np.array([1, 2, 3, 4, 5])
print (vector)

3.使用numpy构建二维矩阵

matrix = np.array([[1, 2, 3], [4, 5, 6],[7, 8, 9]])
print (matrix)

4.使用numpy查看结构

matrix = np.array([[1, 2, 3], [4, 5, 6],[7, 8, 9]])
print (matrix.shape) // (3 ,3)

5.使用numpy需要保证array中的数据类型一致

6.numpy的数据索引与切片操作同python一样

7.numpy.array选入某一行或者列所有元素,可以使用( : ) 来代替所有行或者列,也可以通过切片操作取得多行或者列

#取出所有行中的第1个元素,元素从0开始
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print (matrix[:, 1]) // 2  5  8
matrix = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print (matrix[:, 0:2])

8.numpy修改数据类型,可以通过astype来修改

matrix = np.array(["1", "2", "3"])
print (matrix)
print (matrix.dtype)
matrix = matrix.astype(float)
print (matrix)
print (matrix.dtype)

9.NumPy中的维度(dimension)、轴(axis)、秩(rank)的含义

数值计算

1.numpy获取极值,min最小 , max 最大

matrix = np.array([1, 2, 3])
print matrix.max()
print matrix.min()

2.numpy矩阵行求和使用sum(axis = 1) ,列求和sum(axis = 0)

matrix = np.array([[1, 2, 3], [4, 5, 6]])
#把矩阵中所有元素逐个相加
p0 = matrix.sum()
#指定操作沿着什么轴(纬度) 0,是竖向,1,是横向p1 = matrix.sum(axis=0)p2 = matrix.sum(axis=1)print p1print p2

3.numpy矩阵乘积操作

matrix = np.array([[1, 2, 3], [4, 5, 6]])
p1 = matrix.prod()
print (p1)

4.取得值的索引

matrix = np.array([[1, 2, 3], [4, 5, 6]])
p1 = matrix.argmin()
print (p1)
p2 = matrix.argmax()
print (p2)

5.标准差

matrix = np.array([[1, 2, 3], [4, 5, 6]])
p1 = matrix.std()
print (p1)

6.方差

matrix = np.array([[1, 2, 3], [4, 5, 6]])
p1 = matrix.var()
print (p1)

7.截断操作

#截断操作,给定边界,不满足条件的补足
matrix = np.array([[1, 2, 3], [4, 5, 6]])
p1 = matrix.clip(2,4)
print (p1)

8.四舍五入

matrix = np.array([1.2,3.56,6.41])
p1 = matrix.round()
print (p1)
#round()中可以传入参数,表示精确到小数点后多少位
p2 = matrix.round(1)
print(p2)

9.排序操作

matrix = np.array([[1.2,3.56,6.41],[5.32,6.58,7.89]])
#默认升序
np.sort(matrix)

10.数据插入指定区间,返回插入的索引结果

#将数据插入指定区间
matrix = np.linspace(0,10,10)
values = np.array([2.5,5.5,9.5])
np.searchsorted(matrix,values)

11.指定格式的升序降序

#负数引导为降序,默认升序
index = np.lexsort([-1]*tag_array[:,0],tag_array[:,2])

12.删除指定行或者指定列

删除一行

import numpy as np
list_data = [[1,2,3],[2,3,4],[4,5,6],[9,8,7]] # 可以为numpy数据
delete_data = np.delete(list_data , 2, axis=0) # 删除第3列 axis用于控制行列

删除一列

import numpy as np
list_data = [[1,2,3],[2,3,4],[4,5,6],[9,8,7]] # 可以为numpy数据
delete_data = np.delete(list_data , 1, axis=1) # 删除第2行 axis用于控制行列

数组形状

1.根据指定格式拆分

matrix = np.arange(10)
print(matrix)
#按照格式拆分
matrix.shape = 2,5
print(matrix)
#重新按照指定格式拆分,拆分需要按照实际格式来拆分
matrix.reshape(1,10)
print(matrix)

2.增加新的维度

matrix = np.arange(10)
print(matrix.shape)
matrix = matrix[np.newaxis,:]
print(matrix.shape)

3.自动压缩删除没有数据的维度

matrix = np.arange(10)
print(matrix.shape)
matrix = matrix[:,np.newaxis,np.newaxis]
print(matrix.shape)
matrix = matrix.squeeze()
print(matrix.shape)

矩阵操作

1.numpy构造向量,并且转换为自定义的矩阵形式

// 0 -  15 的向量
matrix = np.arange(15)
print matrix// 3 x 5 的矩阵
mat = matrix.reshape(3, 5)
print mat

2.numpy初始化零矩阵

mat = np.zeros((3, 4))
print mat

3.numpy构建全一矩阵,并且指定数据类型

p1 = np.ones((2, 3, 4), dtype=np.int32)
print p1

4.numpy构建等差数列

#解释:从10 - 30 每个数加5,最大数要小于30
p1 = np.arange(10, 30, 5)
print p1

5.numpy构建随机矩阵,使用random

// 随机3 x 4矩阵 ,默认 0 - 1之间
p1 = np.random.random((3, 4))
print p1

6.numpy构建给定某个区间,等间隔取到n个值

from numpy import pi
p1 = np.linspace(0, 2 * pi ,100)
print p1

7.矩阵的相关操作

p1 = np.array([[1, 2], [3, 4]])
p2 = np.array([[5, 6], [7, 8]])
  • 对矩阵每个元素进行平方操作
print p1**2
  • 对矩阵进行加法操作
print p1 + p2
  • 对矩阵进行 * 号,对应位置相乘
print p1 * p2
  • 矩阵乘法
print p1.dot(p2)print np.dot(p1, p2)

矩阵转置

matrix = np.array([[1,2,3],[4,5,6],[7,8,9]])
print(matrix)
# .T也表示转置
matrix = matrix.transpose()
print(matrix)

8.数据填充

import numpy as npmat = np.array([1, 2, 3])
mat.fill(0)
print(mat)

9.显示矩阵纬度

import numpy as npmat = np.array([[1, 2, 3], [4, 5, 6]])print(mat.ndim)

10.行列式计算

3 * 4   -   1   *     2    行列式


from numpy import *A = array([[3, 1],  [2, 4]])B = linalg.det(A)print(B)

【人工智能初级系列(一)】科学计算库 Numpy相关推荐

  1. python矩阵运算法则_导数与梯度、矩阵运算性质、科学计算库numpy

    一.实验介绍 1.1 实验内容 虽然在实验一中我想尽量少的引入(会让人放弃继续学习的)数学概念,但我似乎还是失败了.不过这几乎是没有办法的事,要想真正学会深度学习,没有一定的数学基础(高等数学.线性代 ...

  2. numpy不用科学记数发 python_Python科学计算库Numpy常用的函数使用

    林小森博客: Python科学计算库Numpy常用的函数使用 - 林小森​www.linxiaosen.com Numpy具有强大的计算功能,本文介绍Numpy常用的函数,可以有效的提高工作效率. 首 ...

  3. AI常用框架和工具丨1. 科学计算库NumPy

    科学计算库NumPy,AI常用框架和工具之一.理论知识结合代码实例,希望对您有所帮助. 文章目录 环境说明 一.NumPy简介 二.数组 2.1 NumPy数组的优势 2.2 ndarray对象 2. ...

  4. 唐宇迪学习笔记1:Python环境安装、Pytho科学计算库——Numpy

    目录 一.AI数据分析入门 ​1.案例来源 2.Python环境配置(Python3) Python的安装 Python库安装工具 Jupyter Notebook 二.Python科学计算库--Nu ...

  5. 一文带你熟悉简单实用的Python科学计算库NumPy

    Python科学计算库NumPy 安装 数组的创建 array创建 **arange** 创建 **随机数创建** 方法numpy.random.random(size=None) 方法numpy.r ...

  6. 机器学习——科学计算库(Numpy,Matplotlib,Pandas)

    机器学习--科学计算库中主要介绍的内容是人工智能深度学习过程常用的几个python库,主要有Numpy,Matplotlib,Pandas等,具体如下所示 在学习的过程中,我也从网上借鉴了多位大佬的优 ...

  7. Python 科学计算库 Numpy 准备放弃 Python 2 了

    Numpy 是 Python 的一个科学计算库,提供了矩阵运算的功能,一般与 Scipy.matplotlib 一起使用. 今天 Numpy 的 GitHub 主页上发文称,Numpy 库准备从 20 ...

  8. python科学计算库numpy和绘图库PIL的结合,素描图片(原创)

    # 导入绘图库 from PIL import Image #导入科学计算库 import numpy as np #封装一个图像处理工具类 class TestNumpy(object):def p ...

  9. Python 科学计算库 Numpy(一)—— 概述

    目录 一 Numpy(Numerical Python) 1. Numpy 是什么 2. Numpy 的主要用途 二 Numpy 数组 VS Python 列表 三 Numpy 数据类型和属性 1. ...

  10. 来都来了,你确定不看看,使用python中的科学计算库Numpy操作数组,你一定能学废(图文并茂版)

    Numpy操作数组 Numpy库 Numpy库的介绍 Numpy库的安装: python中数组与列表对比 列表: 数组: 数组的创建 使用array方法创建数组 注意: ndmin,dtype参数的使 ...

最新文章

  1. ML之回归预测:利用九大类机器学习算法对无人驾驶汽车系统参数(2018年的data,18+2)进行回归预测值VS真实值
  2. SAP CK40N常见问题
  3. Keras-数据增广
  4. 2019年1月已到,Java 8 要收费了吗?
  5. centos lnmp源码安装mysql_CentOS 6.6 下源码编译安装MySQL 5.7.5
  6. 详细的Windows下安装 binwalk
  7. 由已有数组创建新数组:concat()splice()方法
  8. tomcat常见报错
  9. 更改docker源 aliyun_番外篇 (1) Docker 安装
  10. spark开发环境配置
  11. leetcode·单调栈
  12. 极客技术专题【002期】:开发小技巧 - 如何使用jQuery来处理图片坏链?
  13. java big5转换为gbk_简体繁体转换代码(Big5-GB | GBK简体-GBK繁体)
  14. 信号与系统实验六 傅里叶分析方法的应用
  15. 刷机-升级到3.90M33的方法
  16. ddns动态域名注册
  17. 四川服务器磁盘阵列卡电池性能,内置磁盘阵列卡的不足之处
  18. 作为技术宅的我,是这样追鬼滅の刃的
  19. springboot通过date_histogram 按时间统计数据
  20. 解决网盘下载速度慢的问题

热门文章

  1. 易语言 字段重复_使对易失性字段的操作原子化
  2. Pub / Sub本地模拟器
  3. react 消息队列_具有AkkaReact流的React队列
  4. CUBA 7的新功能
  5. VMWare vijava –“用户名或密码不正确”异常的奇怪情况
  6. Spring Boot 2应用程序和OAuth 2 –传统方法
  7. Java 7:使用NIO.2进行文件过滤–第2部分
  8. hibernate保存失败_Hibernate:保存与保存并保存或更新
  9. 通过微调JVM Garbage Collector减少Java IDE滞后
  10. java nio拷贝文件_Java 7 – NIO文件革命