矩阵基本运算的 Python 实现
from...import与import区别在于import直接导入指定的库,而from....import则是从指定的库中导入指定的模块
import...as则是将import A as B,给予A库一个B的别称,帮助记忆
在机器学习中,对象是指含有一组特征的行向量。这个领域最出色的技术就是使用图形处理器的 GPU 运算,矢量化编程的一个重要特点就是可以直接将数学公式转换为相应的程序代码,维度是指在一定的前提下描述一个数学对象所需的参数个数,完整表述应为“对象X基于前提A是n维”。
scatter(x,y)和plot(x,y,'*')的效果一致就是根据x和y坐标绘制出所有点而已,
而plot默认是将所有点按一定的顺序连接成一条多段线当plot指定了线性时,就可以绘制不同的图像,比如plot(x,y,'*')
下面是一段测试程序:
# -*- coding: utf-8 -*-
# Filename : mytest1.py
import numpy as np # 导入 numpy库
from numpy import * # 导入 numpy库
import matplotlib.pyplot as plt # 导入 matplotlib 库
# 测试数据集-二维 list
dataSet = [[-0.017612,14.053064],[-1.395634 ,4.662541],[-0.752157
,6.538620],[-1.322371 ,7.152853],[0.423363 ,11.054677],[0.406704
,7.067335],[0.667394 ,12.741452], [-2.460150 ,6.866805],[0.569411
,9.548755],[-0.026632 ,10.427743],[0.850433 ,6.920334],[1.347183
,13.175500],[1.176813 ,3.167020],[-1.781871 ,9.097953]]
dataMat = mat(dataSet).T # 将数据集转换为 numpy矩阵,并转置
plt.scatter(dataMat[0],dataMat[1],c='red',marker='o') # 绘制数据集散点图
# 绘制直线图形
X = np.linspace(-2,2,100) # 产生直线数据集
# 建立线性方程
Y = 2.8*X+9
plt.plot(X,Y) # 绘制直线图
plt.show() # 显示绘制后的结果
输出结果如下:
理解数学公式与 Numpy
import numpy as np
myZero = np.zeros([3,5])
print myZero
print '\n'
myOnes = np.ones([3,5])
print myOnes
print '\n'
myRand = np.random.rand(3,4)
print myRand
print '\n'
myEye = eye(3)
print myEye
输出结果:
[[ 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0.]
[ 0. 0. 0. 0. 0.]]
[[ 1. 1. 1. 1. 1.]
[ 1. 1. 1. 1. 1.]
[ 1. 1. 1. 1. 1.]]
[[ 0.08391638 0.45111372 0.13425541 0.4058907 ]
[ 0.4899189 0.09429184 0.49567921 0.05946378]
[ 0.9062396 0.34326417 0.43128689 0.73593377]]
[[ 1. 0. 0.]
[ 0. 1. 0.]
[ 0. 0. 1.]]
矩阵基本运算的 Python 实现的更多相关文章
- Eigen矩阵基本运算
1 矩阵基本运算简介 Eigen重载了+,-,*运算符.同时提供了一些方法如dot(),cross()等.对于矩阵类的运算符重载只支持线性运算,比如matrix1*matrix2是矩阵相乘,当然必须要 ...
- leetcode-Spiral Matrix II 螺旋矩阵2之python大法好,四行就搞定,你敢信?
Spiral Matrix II 螺旋矩阵 Given an integer n, generate a square matrix filled with elements from 1 to n2 ...
- 矩阵类的python实现
科学计算离不开矩阵的运算.当然,python已经有非常好的现成的库:numpy. 我写这个矩阵类,并不是打算重新造一个轮子,只是作为一个练习,记录在此. 注:这个类的函数还没全部实现,慢慢在完善吧. ...
- 推荐系统之矩阵分解及其Python代码实现
有如下R(5,4)的打分矩阵:(“-”表示用户没有打分) 其中打分矩阵R(n,m)是n行和m列,n表示user个数,m行表示item个数 那么,如何根据目前的矩阵R(5,4)如何对未打分的商品进行评分 ...
- 线性规划之单纯形算法矩阵描述与python实现
声明 本文为本人原创,转载请注明出处.本文仅发表在博客园,作者LightningStar. 问题描述 所有的线性规划问题都可以归约到标准型的问题,规约过程比较简单且已经超出本文范围,不再描述,可以参考 ...
- leetcode 73 矩阵置零 Python
矩阵置零 给定一个 m x n 的矩阵,如果一个元素为 0,则将其所在行和列的所有元素都设为 0.请使用原地算法. 示例 1: 输入: [ [1,1,1], [1,0,1], [1 ...
- 顺时针打印矩阵元素(python实现)
我觉得我的算法比较简单易懂,比网上的那些简单些.至于时间复杂度就没有比较了. 算法思想:从最外层向内层遍历矩阵 # my algorithmimport math def print_matrix(m ...
- LeetCode--059--螺旋矩阵 II(python)
效率超级低,但是能过.... class Solution: def generateMatrix(self, n): tR = tC = 0 dR = n-1 dC = n-1 x = [[0 fo ...
- Python+MapReduce实现矩阵相乘
算法原理 map阶段 在map阶段,需要做的是进行数据准备.把来自矩阵A的元素aij,标识成p条<key, value>的形式,key="i,k",(其中k=1,2,. ...
随机推荐
- C#多线程学习之(五)使用定时器进行多线程的自动管理
本文实例讲述了C#多线程学习之使用定时器进行多线程的自动管理.分享给大家供大家参考.具体分析如下: Timer类:设置一个定时器,定时执行用户指定的函数. 定时器启动后,系统将自动建立一个新的线程,执 ...
- hdu 4638 Group
http://acm.hdu.edu.cn/showproblem.php?pid=4638 问题其实就是求[L,R]中有多少个连续的段 若每一个人都是一个段 那么[L,R]中每一个朋友关系就会减少一 ...
- jQuery对表单元素的取值和赋值操作代码
使用常规的思路:$(“#keyword”).value 取值是取不到的,因为此时$(‘#keydord’)已经不是个element,而是个jquery对象,所以应该使用:$(“#keyword”).v ...
- jsp福利哟
Servlet与JSP九大内置对象的关系 JSP对象 怎样获得 out->response.getWriter request ->Service方法中的req参数 response -& ...
- python 接口开发(一)
cmd中,提示pip版本太低,先升级pip pip install --upgrade pip (pip,安装和管理python扩展包的工具) cmd下,pip,出现详细信息证明装成功了 pip ...
- FineUI疑难杂症
1. 导出excel操作:因为fineui里的按钮自带异步功能,所以要把 EnableAjax="false" DisableControlBeforePostBack=" ...
- 猜猜两道Java基础面试题的结果
class TA { public String s = "A"; public String getS() { return s; } } class TB extends TA ...
- 过期邮件替换SQL
- java课程三课堂例子验证
1.ClassAndObjectTest.java 验证截图: 2.ObjectEquals.java 运行截图: 3.InitializeBlockDemo.java Java进行初始化的地方有 ...
- HDOJ-三部曲一(搜索、数学)-1013-Sudoku
Sudoku Time Limit : 4000/2000ms (Java/Other) Memory Limit : 131072/65536K (Java/Other) Total Submi ...