numpy初识
1,机器学习numpy 初识
1)numpy初识
import numpy
num1= numpy.array([1,2,3])
dtype('num1') #查找类型
num1.dtype
num1.shape #查找数据维数
num1.genfromtxt("wordll.txt",delimiter=',',dtype=str,skip_header=1) #通过文本读取数据
num1[0,2] #取指定标的数据 小标为0-2的数据
matrix = numpy.array([5,6,7,8],
[5,6,7,8],
[5,6,7,8],
[5,6,7,8])
matrix[:,1] #返回 [6,6,6,6]
enq=(matrix == 8)
#返回array([flase,flase,flase,true],
[flase,flase,flase,true],
[flase,flase,flase,true],
[flase,flase,flase,true])
print(matrix[enq]) #返回 [8,8,8,8]
print(matrix[enq,:]) # 返回所在的行
================================================
2)numpy 矩阵
vetor = numpy.array([10,15,5,30])
numd=(vetor==10 | vetor==15)) #[ture,false,false,true]
vector = vetor.astype(float) # 类型返回float
print(vector.dtype) # float
#求和
matrix.sum(axis=1) # 对行求和
matrix.sum(axis=0) # 对列求和
numpy.arange(15)
a=numpy.arange(15).reshape(3,5)
a.shape
a.dtype.name
a.size
a.nidm
#初始化空矩阵
np.zeros(3,4) # 3 行 4列的空矩阵
np.ones((2,3,4),dtype=np.Int32)
np.arange(10,30,5) # [10,15,20,25]
np.arange(12).reshape(4,3)
np.random.random((2,3))
np.linspace(0,12,100) # 0-12 取100 个数的数组
#计算
np.dot(A,B) #两个矩阵的相乘 也可以A*B
np.sqrt(B) #求平方根
np.exp(B) # 平方
a = np.floor(10*np.random.random(3,4)) #向下取整
a.ravel() # 多维数组变成一位数组
a.shape=(6,2)
a.T #转置
a.reshape(3,-1) #数组转为多维数组 3 行 ,列自动分
np.vstack(A,B) #竖着拼
np.hstack(A,B) #横着拼
np.hsplit(a,3) #横着切
np.vsplit(b,3) #竖着切
np.hsplit(a,(3,4)) #3,4是切分的点
id(a) # 查看内存地址是不是一样
c = a.view();
c.shape=2.6 # 浅复制 地址不同 但会共享数据
d = a.copy(); #深复制
===================================================
a = np.arange(0,40,10)
print(a)
b = np.tile(a,(4,3)) //重复4行3列的矩阵
print(b)
np.sort(axis=1) # 排序
j=np.argsort(a) # 返回排序之后的索引值数组
=========================================================
numpy模块中的矩阵对象为numpy.matrix,包括矩阵数据的处理,矩阵的计算,以及基本的统计功能,转置,可逆性等等,包括对复数的处理,均在matrix对象中。 class numpy.matrix(data,dtype,copy):返回一个矩阵,其中data为ndarray对象或者字符形式;dtype:为data的type;copy:为bool类型。
>>> a = np.matrix('1 2 7; 3 4 8; 5 6 9')
>>> a #矩阵的换行必须是用分号(;)隔开,内部数据必须为字符串形式(‘ ’),矩
matrix([[1, 2, 7], #阵的元素之间必须以空格隔开。
[3, 4, 8],
[5, 6, 9]]) >>> b=np.array([[1,5],[3,2]])
>>> x=np.matrix(b) #矩阵中的data可以为数组对象。
>>> x
matrix([[1, 5],
[3, 2]])
===========================================================================
numpy 教程参考:http://www.yiibai.com/numpy/
numpy初识的更多相关文章
- numpy 初识(二)
针对 numpy.array(序列)的实例介绍 ndim 数组(矩阵)的维度 size 所有元素的和 数学运算(+, -) 元素个数一样,对应位置相减 加,减,乘,平方一个数,执行广播形式:即都减去一 ...
- numpy 初识(一)
基本操作: 读取文件(与pandas读取csv相似): import numpy numpy.genfromtxt("word.txt", delimiter=',', dtype ...
- Python学习之路:NumPy初识
import numpy as np; //一维NumPy数组 myArray = np.array([1,2,3,4]); print(myArray); [1 2 3 4] //打印一维数组的形状 ...
- numpy初识 old
一.创建ndarrary 1.使用np.arrary()创建 1).一维数组 import numpy as np np.array([1, 2, 3, 4]) 2).二维数组 np.array([[ ...
- numpy 初识(三)
基本运算 exp: e sqrt:开放 floor:向下取整 ravel:矩阵拉成一个向 T:转置(行和列变换) 改变形状: resize: 更改其形状(返回值为None)a.resize(6,2) ...
- 初识NumPy库-基本操作
ndarray(N-dimensional array)对象是整个numpy库的基础. 它有以下特点: 同质:数组元素的类型和大小相同 定量:数组元素数量是确定的 一.创建简单的数组: np.arra ...
- 初识numpy
from numpy import * 导入numpy包 random可以生成随机数组 通过mat函数,将数组转换成矩阵,可以对矩阵进行求逆计算等.其中.I操作实现了矩阵求逆计算操作. 执行矩阵乘 ...
- jupter nootbok 快捷键、NumPy模块、Pandas模块初识
jupter nootbok 快捷键 插入cell:a b 删除cell:x cell模式的切换:m:Markdown模式 y:code模式 运行cell:shift+enter tab:补全 shi ...
- 初识numpy的多维数组对象ndarray
PS:内容来源于<利用Python进行数据分析> 一.创建ndarray 1.array :将一个序列(嵌套序列)转换为一个数组(多维数组) In[2]: import numpy as ...
随机推荐
- winPcap编程之获取适配器信息(二)
首先要读一下这一页的东西:http://www.winpcap.org/docs/docs_412/html/group__wpcapsamps.html 可以结合中文版本看http://www.fe ...
- Apache配置腾讯云SSL证书指引
一.安装Apache 1) 使用yum安装Apache # yum install httpd 2) 修改测试页面 # vim /var/www/html/index.heml PS:修改为测试内容, ...
- win10 uwp 右击浮出窗在点击位置
本文主要让MenuFlyout出现在我们右击位置. 我们一般使用的MenuFlyout写在前台,写在Button里面,但是可能我们的MenuFlyout显示的位置和我们想要的不一样. 通过使用后台写S ...
- 转:stringstream的用法
[本文来自]http://www.builder.com.cn/2003/0304/83250.shtmlhttp://www.cppblog.com/alantop/archive/2007/07/ ...
- 简述Apache的ab测试主要有那些关键指标
一.ab的原理 ab是apachebench命令的缩写. ab的原理:ab命令会创建多个并发访问线程,模拟多个访问者同时对某一URL地址进行访问.它的测试目标是基于URL的,因此,它既可以用来测试ap ...
- 怎么样防止Sql注入
(1)对于动态构造SQL查询的场合,可以使用下面的技术: 第一:替换单引号,即把所有单独出现的单引号改成两个单引号,防止攻击者修改SQL命令的含义.再来看前面的例子,“SELECT * from Us ...
- 使用vsftpd+nginx搭建一个文件服务器
一:安装vsftpd 1.安装 [root@localhost jack]# yum -y install vsftpd 安装完后,有/etc/vsftpd/vsftpd.conf 文件,是vsftp ...
- 将摄像头的读入的人像放入背景视频中_with_OpenCV_in_Python
import cv2 import numpy as np import time cap = cv2.VideoCapture(0) background_capture = cv2.VideoCa ...
- 自学Java HashMap源码
自学Java HashMap源码 参考:http://zhangshixi.iteye.com/blog/672697 HashMap概述 HashMap是基于哈希表的Map接口的非同步实现.此实现提 ...
- LeetCode 437. Path Sum III (路径之和之三)
You are given a binary tree in which each node contains an integer value. Find the number of paths t ...