Numpy 用法小结
1. asarray 函数
可以将输入数据转化为矩阵格式。
输入数据可以是(列表,元组,列表的列表,元组的元组,元组的列表等这些数组形式)。
>>> asarray([(1,2,3),(4,5,6),(7,8,9)]) ##元组的列表
>>> asarray([[1,2,3],[4,5,6],[7,8,9]]) ##列表的列表
>>> asarray(((1,2,3),(4,5,6),(7,8,9))) ##元组的元组 array([[1, 2, 3], # 结果相同
[4, 5, 6],
[7, 8, 9]])
语法:
asarray(a, dtype=None, order=None)
第一参 a : 输入数据,一般都是可以转化为数组的格式,参考上面例子。
第二参 dtype: data-type, optional; By default, the data-type is inferred from the input data. 比如float32,float64
第三参 order:两个值, 'C' row major or column 'F' fortran;
转化为数组后,可以对数组进行大小判断:
# 判断a中数是否大于0,如果大于0,则将该数置为1, # 1 未转换为数组,就判断与0的大小
>>> a = [[3,2],[2,0]]
>>> numpy.asarray(a>0,'i') #'i'表示为dtype类型为int
# 出现array(1.0, dtype=float32) >>> a = [[1,2],[1,0]]
>>> a = numpy.asarray(a) #必须先转换为array
>>> numpy.asarray(a>0,'i') array([[1, 1],
[1, 0]])
2. shape 函数
能够读取矩阵的长度(形状)
>>> a=[[2,3,4],[4,5,6],[3,4,5]]
>>> from numpy import * >>> b=asarray(a) >>> b.shape
(3L, 3L)
>>> b[1].shape
(3L,)
输入可以是,整数,矩阵,也可以是矩阵的某一维(可以计算其长度)
3. Numpy 保存和读取数据
一维和二维数组(矩阵)可以用 savetxt() 保存和loadtxt() 快速保存和读取;
savetxt("e:/python/movie_ratings/item_similarity.txt", item_similarity_np)
reloaded_matrix=loadtxt("e:/python/movie_ratings/item_similarity.txt")
更一般的方法是save() 和load(), 此时文件名一定会被置为 .npy
4. arange函数
arange函数用于创建等差数组,类似range函数,经常用于for循环;
两者的区别仅仅是arange返回的是一个数据 array,而range返回的是list
5. zeros, ones
生成0,1数组, 注意是 双括号
>>> numpy.ones((10,10))
array([[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.],
[ 1., 1., 1., 1., 1., 1., 1., 1., 1., 1.]])
6. mat 把数组转换为矩阵
numpy 的一个重要对象是 numpy.matrix。
包括矩阵数据的处理,矩阵的计算,以及基本的统计功能,转置,可逆性等等,包括对复数的处理,均在matrix对象中。
具体函数列表参考:
http://blog.csdn.net/qq403977698/article/details/47254539
--------------------------------------------------------
其他非numpy的函数:
xlist=[0,1,1,2,3]
set(xlist) 可以去重,生成集合set 类型。
Numpy 用法小结的更多相关文章
- numpy用法小结
前言 个人感觉网上对numpy的总结感觉不够详尽细致,在这里我对numpy做个相对细致的小结吧,在数据分析与人工智能方面会有所涉及到的东西在这里都说说吧,也是对自己学习的一种小结! numpy用法的介 ...
- pandas用法小结
前言 个人感觉网上对pandas的总结感觉不够详尽细致,在这里我对pandas做个相对细致的小结吧,在数据分析与人工智能方面会有所涉及到的东西在这里都说说吧,也是对自己学习的一种小结! pandas用 ...
- 转载:Hadoop排序工具用法小结
本文转载自Silhouette的文章,原文地址:http://www.dreamingfish123.info/?p=1102 Hadoop排序工具用法小结 发表于 2014 年 8 月 25 日 由 ...
- [No000010]Ruby 中一些百分号(%)的用法小结
#Ruby 中一些百分号(%)的用法小结 #这篇文章主要介绍了Ruby 中一些百分号(%)的用法小结,需要的朋友可以参考下 what_frank_said = "Hello!"#% ...
- C++ typedef用法小结 (※不能不看※)
C++ typedef用法小结 (※不能不看※) 第一.四个用途 用途一: 定义一种类型的别名,而不只是简单的宏替换.可以用作同时声明指针型的多个对象.比如:char* pa, pb; // 这多数不 ...
- 函数fgets和fputs、fread和fwrite、fscanf和fprintf用法小结 (转)
函数fgets和fputs.fread和fwrite.fscanf和fprintf用法小结 字符串读写函数fgets和fputs 一.读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符 ...
- 1:CSS中一些@规则的用法小结 2: @media用法详解
第一篇文章:@用法小结 第二篇文章:@media用法 第一篇文章:@用法小结 这篇文章主要介绍了CSS中一些@规则的用法小结,是CSS入门学习中的基础知识,需要的朋友可以参考下 at-rule ...
- 英语语法最终珍藏版笔记- 21it 用法小结
it 用法小结 it 在英语中的意思较多,用法较广,现总结如下. 一.it作句子的真正主语 1.it 指前面已经提到过的人或事物,有时指心目中的或成为问题的人或事物,作真正主语. 例如: What’s ...
- [转]ssh常用用法小结
ssh常用用法小结 1.连接到远程主机: 命令格式 : ssh name@remoteserver 或者 ssh remoteserver -l name 说明:以上两种方式都可以远程登录到远程主机, ...
随机推荐
- 让IE10等支持classList2.0(转)
chrome24+, firesfox26+起支持classList2.0,即让它同时添加或删除多个类名, toggle方法支持第2个参数,用于强制添加或删除 var div = document.c ...
- 在VS2015中用C++创建DLL并用C#调用且同时实现对DLL的调试
from:http://m.blog.csdn.net/article/details?id=51075023 在VS2015中先创建C#项目,然后再创建要编写的动态库DLL项目,这样做的好处是整个解 ...
- sudo命令使用的几个场景
在linux系统下,普通用户无法直接执行root用户权限下的命令,如果想让普通用户执行只有root用户才能执行的操作命令.下面罗列下经常使用sudo命令的几个场景: 1.用户无权限执行root命令普通 ...
- Kali linux渗透测试常用工具汇总2-渗透攻击
渗透攻击的思路一般是扫描漏洞,然后利用不同的漏洞,才有针对的渗透攻击. 漏洞扫描的工具有Nessus,该工具可同时在本地或远端遥控,对系统的漏洞分析扫描.Nessus通过新建扫描策略,并添加对应的插件 ...
- HTML5商城开发二 通过位移实现拖动效果
1.效果 在该区域内,手按住拖动,该模块可上下滑动,至最顶或最底部,滑动出现空白区域将自动缩回
- hessian学习
hessian是一个采用二进制格式传输的服务框架,相对传统soap web service,更轻量,更快速.官网地址:http://hessian.caucho.com/ 目前已经支持N多语言,包括: ...
- 深度学习(deep learning)
最近deep learning大火,不仅仅受到学术界的关注,更在工业界受到大家的追捧.在很多重要的评测中,DL都取得了state of the art的效果.尤其是在语音识别方面,DL使得错误率下降了 ...
- realmswift的使用
官网:https://realm.io/ 1.说下数据库迁移的问题: 在func application(application: UIApplication, didFinishLaunchingW ...
- KMS10流氓软件
win10想激活,结果中了流氓软件的当... (关键是win10家庭单语言版居然还激活不了....白吃亏了) 把我的chrome 和 firefox 主页改成hao.qquu8.com,该网址重定向到 ...
- BASE64 编码和解码
依赖jar: import org.apache.commons.codec.binary.Base64; BASE64和其他相似的编码算法通常用于转换二进制数据为文本数据,其目的是为了简化存储或传输 ...