(原创文章转载请标注来源)

在学习机器学习的过程中经常会用到矩阵,那么使用numpy扩展包将是不二的选择

建议在平Python中用多维数组(array)代替矩阵(matrix)

入门请考 http://old.sebug.net/paper/books/scipydoc/numpy_intro.html#

import numpy np

1. 读写数组,这里可以看成矩阵

#返回值格式(评分,信任表,用户个数,项目个数)
  a = np.arange(0,12,0.5).reshape(4,-1)
  np.savetxt("a.txt", a) # 缺省按照'%.18e'格式保存数据,以空格分隔
  np.loadtxt("a.txt")
  np.loadtxt('a.txt',dtype='int')#设置读出的数据类型

2. 使用数组的reshape方法,可以创建一个改变了尺寸的新数组,原数组的shape保持不变:

a = np.arange(4).reshape(2,2)
b = np.arange(6).reshape(2,3)
print('the result is\n ',a)
print('the result is\n ',b)

3.transpose()对数组进行转置

print('the transpose is\n ',b.transpose())#转置

4. 矩阵运算

np.dot() #矩阵的乘法
print('the result is\n ',np.dot(a,b))#矩阵乘
np.linalg.inv() #求矩阵的逆
print('the inverse is\n ',np.linalg.inv(a))#逆矩阵

5. 求行列大小

(m,n) = a.shape#求行列个数

6. 求最值

temp1 = np.max(a[:,0])
temp2 = np.min(a[:,0])

7. 求第三列等于1的个数

np.sum(a[:,2]==1)


8.
求一组随机数组

randIndices = np.random.permutation(4)

ans=array[[3,0,2,1]]

9. 组合两个数组

np.vstack((a,b))#纵向结合,保证列数相同 注意双括号
np.hstack((a,b))#横向结合,保证行数相同

10. 求和 和 计算平均数

np.sum(a,0)#0代表求得是各列的和

np.mean(a,1)#1代表求得各行的平均数

11.求交集

np.intersectld(a[0,:],b[0,:])#求两个一维数组的交集

12.条件查询

np.where(a>5)#找到所有满足条件的位置

np.where(a>5,0,1)#找到这些值满足赋值为0,不满足赋值为1

13.矩阵写文件 追加 方式

fileObject = open('result.txt','a')#追加的方式打开文件
a = [[1,2,3] ,[3,4,5] , [4,5,6]]#存取list
for i in a:
  tmp = str(i)
  tmp = tmp.replace('[','')
  tmp = tmp.replace('[','')+'\n'
  fileObject.weite(tmp)
fileObject.close()
b = np.loadtxt('result.txt',delimiter=',')#同样可以读出矩阵
print(b[:,:]) 

未完。。补充中。。欢迎讨论

python numpy 使用笔记 矩阵操作的更多相关文章

  1. Python numpy学习笔记(一)

    下边代码是关于numpy的一些基本用法,包括数组和矩阵操作等... import numpy as np print "<== print version ==>" p ...

  2. python基础学习笔记——文件操作

    文件操作 初始文件操作 使用Python来读写文件是非常简单的操作,我们使用open()函数来打开一个文件,获取到文件句柄,然后通过文件句柄就可以进行各种各样的操作了 根据打开方式的不同能够执行的操作 ...

  3. python自动化测试学习笔记-6excel操作xlwt、xlrd、xlutils模块

    python中通过xlwt.xlrd和xlutils操作xls xlwt模块用于在内存中生成一个xls/xlsx对象,增加表格数据,并把内存中的xls对象保存为本地磁盘xls文件; xlrd模块用于把 ...

  4. python.numpy.std()计算矩阵标准差

    >>> a = np.array([[1, 2], [3, 4]]) >>> np.std(a) # 计算全局标准差 1.1180339887498949 > ...

  5. CS231n课程笔记翻译1:Python Numpy教程

    译者注:本文智能单元首发,翻译自斯坦福CS231n课程笔记Python Numpy Tutorial,由课程教师Andrej Karpathy授权进行翻译.本篇教程由杜客翻译完成,Flood Sung ...

  6. Python numpy中矩阵的用法总结

    关于Python Numpy库基础知识请参考博文:https://www.cnblogs.com/wj-1314/p/9722794.html Python矩阵的基本用法 mat()函数将目标数据的类 ...

  7. Python中的矩阵操作

    Numpy 通过观察Python的自有数据类型,我们可以发现Python原生并不提供多维数组的操作,那么为了处理矩阵,就需要使用第三方提供的相关的包. NumPy 是一个非常优秀的提供矩阵操作的包.N ...

  8. Python Numpy线性代数操作

    Python Numpy线性代数函数操作 1.使用dot计算矩阵乘法 import numpy as np from numpy import ones from __builtin__ import ...

  9. 《Python数据分析》笔记1 ——Numpy

    Numpy数组 1.Numpy数组对象 Numpy中的多维数组称为ndarray,他有两个组成部分. 1.数据本身 2.描述数据的元数据 2.Numpy的数值类型 bool: 布尔型 inti:其长度 ...

随机推荐

  1. 《算法问题实战策略》-chaper21-树的实现和遍历

    这一章节开始介绍一个数据结构中的一个基本概念——树. 我们从数据结构的解读来解释树结构的重要性,现实世界的数据除了最基本的线性结构(我们常用队列.数组和链表等结构表征),还有一个重要的特性——层级结构 ...

  2. HDU 畅通工程系列

    畅通工程系列都是比较裸的最小生成树问题,且是中文题目,不赘述了. 1.HDU 1863 畅通工程 题意:一个省有很多村庄,其中一些之间是可以建公路的,每条公路都需要不同的代价,问代价最小的情况下将所有 ...

  3. openStack images

  4. UVa 674: Coin Change

    动态规划题.对于1,5,10,25,50五种币值的硬币,编号为0~4,存入数组cent中.数组iWay的元素iWay[k][i]表示仅使用0~i的硬币凑出k分钱的方法数,按是否使用编号为i的硬币分类, ...

  5. NOI2015 程序自动分析 prog

    何等水题 某神犇仿关押罪犯的写法 却写挂了  然而实际上并不需要补集之类的 #include<iostream> #include<cstring> #include<c ...

  6. java 从零开始,学习笔记之基础入门<Oracle_基础>(三十三)

    Oracle 数据库基本知识   [训练1] 显示DEPT表的指定字段的查询.               输入并执行查询:               SELECTdeptno,dname FROM ...

  7. Android中scrollview的scrollto方法不起作用的办法

    有时候,我们在onCreate函数中调用ScrollBy函数.ScrollTo函数,会出现无效果的情况 public class ShowTraffic extends Activity Scroll ...

  8. HDU4530:小Q系列故事——大笨钟

    Problem Description 饱尝情感苦恼的小Q本打算隐居一段时间,但仅仅在3月25号一天没有出现,就有很多朋友想念他,所以,他今天决定再出来一次,正式和大家做个告别. 小Q近来睡眠情况很差 ...

  9. Swift开发之 使用系统的TabbarController

    使用系统的tabbar解决图片的问题. 用sb使用系统的tabbar,弄好后发现图片始终是蓝色的,并非原来的图片,后经上网查资料,问问同事,有了以下的这些代码,做个标记. AppDelegate中 f ...

  10. Hibernate知识点总结

    Hibernate配置二级缓存:  --- 使用EhCache 1.hibernate.cfg.xml中配置二级缓存 <hibernate-configuration>   <ses ...