Python中的Numpy包
通过本次学习你可以掌握Numpy
numpy的主要对象是同质多维数组。也就是在一个元素(通常是数字)表中,元素的类型都是相同的。
numpy的数组类被成为ndarray。别名为array。numpy.array与标准python库类array.array不一样,标准库类中的那个只能处理一维数组并且功能更少。
例如ndarray为矩阵
关于维数和类型操作:
ndarray.ndim 数组的轴(维度)的数量。
ndarray.shape: 数组的维度。
ndarray.size: 数组的元素的总个数。(m*n)
ndarray.dtype: 用来描述数组中元素类型的对象。
例子:
import numpy as np A = np.array([1,3,1])
B = np.array([[1],[2],[3]])
C = np.array([1,3,1],dtype= "float64")
print("""
数组A的维度数为%s
数组A的维度为%s
数组A的元素总个数为%s
""" %(A.ndim ,B.shape ,A.size))
print("""
数组A的类型%s
数组C的类型%s
""" %(A.dtype ,C.dtype ))
结果:

关于生成特殊矩阵操作:
zeros() 元素全部为0
ones() 元素全为1
arange(起始,结束,步长)
linspace(起始,结束,元素个数)
为了生成数字序列。numpy提供一个类似于arange的函数,返回一个列表,参数为(起始,结束,步长)
函数linspace是一个更好的选择,因为我们可以对该函数指定需要创建多少个元素,参数为(起始,结束,元素个数)
例子:
__author__ = "WSX" import numpy as np A = np.zeros((3,3))
B = np.ones((3,3))
C = np.arange(1.0,5,2.1)
D = np.linspace(1,5,4)
print("""
生成的A为:\n%s
生成的B为:\n%s
生成的C为:\n%s
生成的D为:\n%s
""" %(A,B,C,D))
结果:

关于reshape的使用:
A= np.array([1,2,3,4,5,6,7,8,9])
B= np.array([1,2,3,4,5,6,7,8,9,10,11,12])
print("A(3,3)\n", A.reshape(3,3)) #二维矩阵
print("B(1,9)\n",A.reshape(1,9)) #二维矩阵
print("B(2,2,3)\n",B.reshape(2,2,3)) #三维矩阵
结果:

关于矩阵的运算:
在数组上的算术操作符是逐元素的得到的是一个重新创建的数组,然后将结果写入新数组中:
numpy中乘积操作符×是逐元素进行的
矩阵的积可以通过使用dot 函数
(待续。。。)
Python中的Numpy包的更多相关文章
- 沉淀,再出发:python中的pandas包
沉淀,再出发:python中的pandas包 一.前言 python中有很多的包,正是因为这些包工具才使得python能够如此强大,无论是在数据处理还是在web开发,python都发挥着重要的作用,下 ...
- 在python中引用jar包
在本文中,首先创建一个maven项目,然后打包成jar包,在python中调用jar包,执行java类方法. 1.在eclipse中创建maven项目 我这里创建一个普通java项目,择选择 “mav ...
- python中的各个包的安装,用pip安装whl文件
在安装之前,一直比较迷惑究竟如何用,安装完后,发现竟然如此简单 首先我一般用的是python27,官网下载python27msi安装window7 64位后,已经自带了Pip 和 easy_insta ...
- python中TCP粘包问题解决方案
TCP协议中的粘包问题 1.粘包现象 基于TCP写一个远程cmd功能 #服务端 import socket import subprocess sever = socket.socket() seve ...
- python中模块与包的概念
在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护.为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多 ...
- Python中的Numpy、SciPy、MatPlotLib安装与配置
Python安装完Numpy,SciPy和MatplotLib后,可以成为非常犀利的科研利器.网上关于这三个库的安装都写得非常不错,但是大部分人遇到的问题并不是如何安装,而是安装好后因为配置不当,在使 ...
- python 中 模块,包, 与常用模块
一 模块 模块:就是一组功能的集合体, 我们的程序可以直接导入模块来复用模块里的功能 导入方式 一般为 : import 模块名 在python中, 模块一般分为四个通用类别 1使用python编写. ...
- python中模块、包、库的区别和使用
模块:就是.py文件,里面定义了一些函数和变量,需要的时候就可以导入这些模块. 包:在模块之上的概念,为了方便管理而将文件进行打包.包目录下第一个文件便是 __init__.py,然后是一些模块文件和 ...
- python中模块和包的概念
1.模块 一个.py文件就是一个模块.这个文件的名字是:模块名.py.由此可见在python中,文件名和模块名的差别只是有没有后缀.有后缀是文件名,没有后缀是模块名. 每个文件(每个模块)都是一个独立 ...
随机推荐
- HTTP-Runoob:HTTP请求头信息
ylbtech-HTTP-Runoob:HTTP请求头信息 1.返回顶部 1. HTTP 响应头信息 HTTP请求头提供了关于请求,响应或者其他的发送实体的信息. 在本章节中我们将具体来介绍HTTP响 ...
- 此上下文中不允许异步操作。启动异步操作的页必须将 Async 特性设置为 true,并且异步操作只能在 PreRenderComplete 事件之前的页上启动。
<%@ Page Language="C#" AutoEventWireup="true" ...... Async="true" % ...
- phonegap中使用自带浏览器打开链接
<center><a id="ssl2" href="#" onclick="window.open('http://127.0.0 ...
- Java 的基本语法
Java 语言严格区分大小写 一个 Java 源文件里可以定义多个类,但其中只能有一个类被定义为 public 类 如果源文件中包含了 public 类,源文件的名称必须和该 public 类同名 p ...
- UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 85
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 85;import sys reload(sys) sys.s ...
- django的render的说明
return render(request,"homesite.html",locals()) homesite.html页面中的所有内容都可以被渲染,不论是标签还是js代码,包括 ...
- 重命名File
File completeFile = new File(mFilePath + mFileName); if (completeFile.exists()) { File fileWithSuffi ...
- iter创建一个可以被迭代的对象
#!/usr/bin/env python obj = iter([11,22,33,44]) #iter 创建一个可以被迭代的对象 print(obj) r1 = next(obj) print(r ...
- Android中SQLite查询date类型字段出现有返回但是为错误值的情况
出现该情况的原因是因为查询精度与数据库中存储精度不相同造成的,例如,查询精度为 YYYY-MM-DD 但是存储精度为 YYYY-MM-DD HH:MM:SS,就会出现该错误. 更改查询精度为YYYY- ...
- Java开源中文分词类库
IKAnalyzer IKAnalyzer是一个开源的,基于java语言开发的轻量级的中文分词工具包.从2006年12月推出1.0版开始,IKAnalyzer已经推出了3个大版本.最初,它是以开 ...