1. mat()

mat()与array的区别:

mat是矩阵,数据必须是2维的,是array的子集,包含array的所有特性,所做的运算都是针对矩阵来进行的。

array是数组,数据可以是多维的,所做的运算都是针对数组来进行的

(1) 数据能表示的维度不同,array数据可以是多维的,mat的数据必须是2维的。

array能表示超过2维的数据,而mat不能:

对于2维的数据,array和mat的表示形式完全一样(但运算不一样):

(2) 把array转换为mat

(3) matrix 和 array 都可以通过objects后面加.T 得到其转置。但是matrix objects 还可以在后面加 .H 得到共轭矩阵, 加 .I 得到逆矩阵。

(4) array遵从逐个元素的运算,array的类型的a和b的a*b的运算,相当与MATLAB中的a.*b的运算。

数组a,b的点乘乘法运算a*b (逐个元素的运算):

数组a,b的矩阵乘法运算:

相当于矩阵A,B的矩阵乘法运算:

(5) **运算不一样

对于array a,a**2运算相当于对于a的元素逐个求平方:

对于mat a,a**2运算相当于矩阵相乘a*a:

2. list和array的区别

(1) list是python的内置数据类型,list中的数据类型不必相同,主要用来作索性,可以通过索引查找数值,但不能对整个列表进行数值运算

但是可以进行+运算,表示的是两个列表的拼接:

(2) array的中的类型必须全部相同(同属于int,float,duoble)才能进行数组间的运算,否则也只能作索引:

3. shape() 读取矩阵的各个维度的长度

(1)shape() 返回的是各个维度的长度的列表:

(2)shape[n ]表示获取第n个维度的长度

4. random.uniform()方法

uniform(x,y): 随机产生一个在[x, y]范围内的实数,返回一个浮点数。

5. mean()方法

mean()方法为求平均值的方法:

mean(a, axis=None, dtype=None, out=None, skipna=False, keepdims=False)

a: 输入的数组,array类型

axis: None:计算数组中的所有值的平均值

=0:以列为单位计算数组中每一列的所有值的平均值;

=1:以行为单位计算数组中每一行的所有值的平均值

dtype: 为指定数组中的元素的类型,默认为float64

out: 如果提供,则为计算的输出结果保存的数组,大小要和输出结果的数组大小相同

skipna: 如果设置为true,则计算时跳过为NA的值

keepdims: 如果设置为true,输出结果将保持为1的维度,即计算结果放在一个数组内

6. tile() 方法

tile英文单词意思:拼贴。tile(A, n)功能:将数组A重复n次,构成一个新的数组。

A的类型:array, list, tuple, dict, matrix,int, string, float,bool

n的类型: tuple,list, dict, array, int,bool,不可以是float, string, matrix

(1) 当n为一个整数时

(2) 当n为list,tuple

(3) 当A的维度 < n的长度时

tile(A, n)将A中的所有元素作为单元,按n变成一个新的数组,以上为例子。

(4) 当A的维度 > n的长度时

n的长度不足为A的维度,即在n的前面加上(A的维度-n的长度),变成与A的维度相同的长度,再进行重复:

以上的a的维度为2,n的长度为1,n自动补充为[2-1, 3] =[1, 3], 与以下等效:

7. argsort()方法

argsort(a):对数组或元组a进行升序排序, 返回的是升序之后的各个元素在原来a未升序之前的下标,即返回升序之后对应的下标数组。

降序排序:

(1) 获取升序排列之后的最后一个下标

(2) 或者使用argsort(-a)进行降序排列,其中a只能是含相同数据类型的数组,不能是列表

8. transpose( )方法

装置,可以装置任何类型mat,list,array,当类=类型为mat的时候,等同于A.T

9. sum

sum(a, axis=None, dtype=None, out=None, skipna=False, keepdims=False)

a: 输入的数组,array类型

axis: None:计算数组中的所有值的和

=0:以列为单位计算数组中每一列的所有值的和;

=1:以行为单位计算数组中每一行的所有值的和

dtype: 为指定数组中的元素的类型,默认为float64

out: 如果提供,则为计算的输出结果保存的数组,大小要和输出结果的数组大小相同

skipna: 如果设置为true,则计算时跳过为NA的值

keepdims: 如果设置为true,输出结果将保持为1的维度,即计算结果放在一个数组内

10. get()方法

dict.get(key, default=None) key -- 字典中要查找的键。default -- 如果指定键的值不存在时,返回该默认值。

11. operator.itemgetter ()

operator.itemgetter(n)定义了一个用来获取对象第n个域数据的函数。

12. iteritems()

返回字典的一个迭代器。返回一个可以调用的对象(可以从操作对象中提取item)

13. sorted() 方法

对list或者iterable进行排列

sorted(iterable, cmp, key, reverse)

iterable指定要排序的list或者iterable,

cmp为函数,指定排序时进行比较的函数,可以指定一个函数或者lambda函数,

key为函数,指定取待排序元素的哪一个域进行排序,

reverse默认为false(升序排列),定义为True时将按降序排列。

与sort区别的是,sort会改变原来对象的顺序:

ndarray.sort(axis=-1, kind='quicksort', order=None)

axis:排序的维度,0表示按行,1表示按列

kind:排序的算法,提供了快排、混排、堆排:’quicksort’, ‘mergesort’, ‘heapsort’

order:排列的顺序

机器学习之numpy库中常用的函数介绍(一)的更多相关文章

  1. C语言string.h中常用字符函数介绍

    原文:http://www.cnblogs.com/xuwenmin888/archive/2013/05/03/3057883.html strcpy 函数名: strcpy 功 能: 拷贝一个字符 ...

  2. MySQL中常用转换函数介绍

    Cast函数:CONVERT函数. 用法:CAST(expr AS type), CONVERT(expr,type) , CONVERT(expr USING transcoding_name). ...

  3. string中常用的函数

    string中常用的函数 发现在string在处理这符串是很好用,就找了一篇文章放在这里了.. 用 string来代替char * 数组,使用sort排序算法来排序,用unique 函数来去重1.De ...

  4. jQuery中常用的函数方法

    jQuery中常用的函数方法总结 Ajax处理 load(url,[data],[callback]) url (String) : 待装入 HTML 网页网址. data (Map) : (可选) ...

  5. SQL点滴30—SQL中常用的函数

    原文:SQL点滴30-SQL中常用的函数 该文章转载自http://www.cnblogs.com/jiajiayuan/archive/2011/06/16/2082488.html 别人的总结,很 ...

  6. Mysql中常用的函数汇总

    Mysql中常用的函数汇总: 一.数学函数abs(x) 返回x的绝对值bin(x) 返回x的二进制(oct返回八进制,hex返回十六进制)ceiling(x) 返回大于x的最小整数值exp(x) 返回 ...

  7. Python3:numpy模块中的argsort()函数

    Python3:numpy模块中的argsort()函数   argsort函数是Numpy模块中的函数: >>> import numpy >>> help(nu ...

  8. numpy库中数组的数据类型

    numpy库中数组的数据类型 dtype是一个特殊的对象,它含有ndarray将一块内存解释为特殊数据类型所需要的信息 指定数据类型创建数组 >>> import numpy as ...

  9. python中multiprocessing.pool函数介绍_正在拉磨_新浪博客

    python中multiprocessing.pool函数介绍_正在拉磨_新浪博客     python中multiprocessing.pool函数介绍    (2010-06-10 03:46:5 ...

随机推荐

  1. Day-6: 函数式编程

    函数式编程就是封装成一个个函数,一次调用来完成复杂任务. 函数式编程的一个特点是,允许把函数本身作为参数传入另一个函数,还允许返回一个函数! 高阶函数 高阶函数就是将函数的变量名作为参数传入,内部再对 ...

  2. js 中采用词法作用域

    所谓的 词法( 代码 )作用域, 就是代码在编写过程中体现出来的作用范围. 代码一旦写好, 不用执行, 作用范围就已经确定好了. 这个就是所谓词法作用域. 在 js 中词法作用域规则: 1.函数允许访 ...

  3. spring 整合Mybatis 错误:Parameter 'items_id' not found. Available parameters are [array]

    运行环境:jdk1.7.0_17+tomcat 7 + spring:3.2.0 +mybatis:3.2.7+ eclipse 错误:Parameter 'items_id' not found. ...

  4. 自上而下,逐步揭开PHP解析大整数的面纱

    遇到的问题 最近遇到一个PHP大整数的问题,问题代码是这样的 $shopId = 17978812896666957068; var_dump($shopId); 上面的代码输出,会把$shopId转 ...

  5. Sersync+Rsync实现触发式文件同步

    背景 通常我们在服务器上使用rsync加上crontab来定时地完成一些同步.备份文件的任务.随着业务和应用需求的不断扩大.实时性要求越来越高.一般rsync是通过校验所有文件后,进行差量同步,如果文 ...

  6. Java课程设计——博客作业教学数据分析系统(201521123091 李嘉廉)

    #课程设计--博客作业教学数据分析系统(201521123084 李嘉廉) 1.团队课程设计博客链接 博客作业教学数据分析系统 2.个人负责模块或任务说明 數據分析 Kmeans聚類算法實現 多元綫性 ...

  7. 个人作业1——四则运算题目生成程序(基于java)

    项目代码: https://git.coding.net/YJh_/11.git 题目要求: 除了整数以外,还要支持真分数的四则运算,真分数的运算,例如:/ + / = / 运算符为 +, −, ×, ...

  8. 201521123014 《Java程序设计》第6周学习总结

    1. 本周学习总结 1.1 面向对象学习暂告一段落,请使用思维导图,以封装.继承.多态为核心概念画一张思维导图,对面向对象思想进行一个总结. 1.2 可选:使用常规方法总结其他上课内容. GUI与Sw ...

  9. 201521123089 《Java程序设计》第5周学习总结

    1. 本周学习总结 1.1 尝试使用思维导图总结有关多态与接口的知识点. 2. 书面作业 1.代码阅读:Child压缩包内源代码1.1 com.parent包中Child.java文件能否编译通过?哪 ...

  10. 201521123040《Java程序设计》第3周学习总结

    1. 本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.尝试学会使用思维导图将这些碎片化的概念.知识组织起来.请使用纸笔或者下面的工具画出本周学习到的知识点.截图或者拍照上传.参考资料:百度 ...