我先声明我学numpy的目的:在python中使用矩阵(我需要在机器学习中使用矩阵),所以我的目的很明确,矩阵;

  矩阵在numpy中叫ndarray(The N-dimensional array),我就是很喜欢问这个ndarray为啥叫ndarray,可是大多教程(特别是中文教程)都不说,这就不利于我们给ndarray一个形象的记忆。

ndarray就是多维数组,叫这个是为了与python里的数组区分开来。

  之后我们把目的细分,具体到这个库对应的函数(以下代码都省略了 import numpy as np 哦):

1.生成

  向量:生成向量用linspace (线性空间)

a = np.linspace( 1, 10 , 5 , endpoint = True)
/*
参数说明 第一个1 是起始数,10是末尾数,5是生成向量(数组)的长度,最后一个是生成数组是否包含末尾数的选择,默认为True(即包含10)
*/ b = np.arange(n)
//生成从0 到n-1的数组 c = np.concatenate( a,b)
//把两个数组连起来 concatenate就是一个单词,表示链接起来

  普通矩阵

a = np.array(list/tuple , dtype = np.float32)
//用array函数最直接,第一个参数为矩阵内容,如
a = np.array([ [1,2] , [3,4] ] )
//矩阵内容为包含行列表的列表,行之间用 逗号 分隔, btw,[] 用()代替也是可以的
//打印a
print( a )
// [[1 2]
// [3 4]]

  特殊矩阵

//一下shape 都是元祖哦, 直白说, 就是类似  ( (行数 , 列数) )的写法
np.ones(shape)
np.zeros(shape)
//元素全为一或全为零的矩阵
np.full(shape,val)
//生成一个每个元素都是val的矩阵 full有全部的意思,所以就是 全部都为val
np.eye(n)
//生成一个对角线为1,其余为零的方阵 (n维单位矩阵)eye,网上说是因为其与数学上单位矩阵的字母I读音一样。

  like  一族

a = np.ones_like(b)
//生成shape和b一样的全为 1 的矩阵 b = np.zeros_like(a)
//这个你猜一下把。

  修改矩阵

.reshape(tuple)
//改变原来的矩阵的shape,但是要使生成矩阵与原元素相同
// a = np.arrange(30).reshape( ( 2,3,5 ) ) 比如这样用
// 这儿有个注意的地方,如果参数的元组元素里面有-1,说明其大小可以由其他元祖元素推出来,不用程序员给出。
// 例如一个 长100 的向量 a ,想把它改成 20*5则
a.reshape((20,-1)) .resize( tuple )
//这个和reshape一样用,不过会改变原数组哦,也就是reshape用完,原数组还是原来的配方,但是用过resize之后,某老吉就变成某多宝了~ .swapaxes( ax1 , ax2)
//学过线代的都觉得这个熟悉吧, ,没错这就是转置,transpose

2.矩阵信息查询

//以下函数都是 ndaray对象的成员 直白就是 声明了一个矩阵a, 要使用就得 a.value()

a.ndim
//就是矩阵的维度,一般是2嘛 a.shape
//n 行 m 列 a.size
// 矩阵中有几个元素,相当于 n*m a.dtype
//矩阵中元素的类型

3.矩阵运算

  numpy有一个奇怪的运算叫元素运算,就是A*B代表矩阵A和矩阵B每个元素相乘,,那么我的运算在哪里呢?

  矩阵与矩阵运算

np.dot( A , B)
//矩阵乘法 A**-1
//矩阵的逆

面向矩阵的numpy入门笔记的更多相关文章

  1. Numpy入门笔记第二天

    # 数组的组合 import numpy as np arr1 = np.arange(5) arr2 = np.arange(3) print arr1 print arr2 [0 1 2 3 4] ...

  2. Numpy入门笔记第一天

    # 导入包 import numpy as np # 创建一维数组 a = np.arange(5) print "一维numpy数组", a print "数组的类型& ...

  3. Numpy入门笔记第三天

    __TITLE__ = "利用Numpy进行历史股价分析" __DATASOURCE__ = "ATAGURU" # CSV文件读取 import numpy ...

  4. 路由其实也可以很简单-------Asp.net WebAPI学习笔记(一) ASP.NET WebApi技术从入门到实战演练 C#面向服务WebService从入门到精通 DataTable与List<T>相互转换

    路由其实也可以很简单-------Asp.net WebAPI学习笔记(一)   MVC也好,WebAPI也好,据我所知,有部分人是因为复杂的路由,而不想去学的.曾经见过一位程序猿,在他MVC程序中, ...

  5. 1 TensorFlow入门笔记之基础架构

    ------------------------------------ 写在开头:此文参照莫烦python教程(墙裂推荐!!!) ---------------------------------- ...

  6. System Generator入门笔记

    System Generator入门笔记  [CPLD/FPGA] 发布时间:2010-04-08 23:02:09  System Generator是Xilinx公司进行数字信号处理开发的一种设计 ...

  7. numpy 学习笔记

    numpy 学习笔记 导入 numpy 包 import numpy as np 声明 ndarray 的几种方法 方法一,从list中创建 l = [[1,2,3], [4,5,6], [7,8,9 ...

  8. python常用序列list、tuples及矩阵库numpy的使用

    近期开始学习python机器学习的相关知识,为了使后续学习中避免编程遇到的基础问题,对python数组以及矩阵库numpy的使用进行总结,以此来加深和巩固自己以前所学的知识. Section One: ...

  9. golang微服务框架go-micro 入门笔记2.2 micro工具之微应用利器micro web

    micro web micro 功能非常强大,本文将详细阐述micro web 命令行的功能 阅读本文前你可能需要进行如下知识储备 golang分布式微服务框架go-micro 入门笔记1:搭建go- ...

随机推荐

  1. 翻译连载 | 第 11 章:融会贯通 -《JavaScript轻量级函数式编程》 |《你不知道的JS》姊妹篇

    原文地址:Functional-Light-JS 原文作者:Kyle Simpson-<You-Dont-Know-JS>作者 关于译者:这是一个流淌着沪江血液的纯粹工程:认真,是 HTM ...

  2. MongoDB的mongos实例因无法分配mlock内存挂掉

    问题版本 mongodb-v3.4.4 问题描述 mongos两天死了两次,死前遗言只有日志: 2017-11-01T11:25:27.135+0800 F - [NetworkInterfaceAS ...

  3. C# 扩展方法使用

    为指定类型扩展方法: 定义类Class1: public static class Class1                                  //必须为static类,且不能包含 ...

  4. 利用C#实现分布式数据库查询

    随着传统的数据库.计算机网络和数字通信技术的飞速发展,以数据分布存储和分布处理为主要特征的分布式数据库系统的研究和开发越来越受到人们的关注.但由于其开发较为复杂,在一定程度上制约了它的发展.基于此,本 ...

  5. 设计模式的征途—12.享元(Flyweight)模式

    现在在大力推行节约型社会,“浪费可耻,节俭光荣”.在软件系统中,有时候也会存在资源浪费的情况,例如,在计算机内存中存储了多个完全相同或者非常相似的对象,如果这些对象的数量太多将导致系统运行代价过高.那 ...

  6. OC语言的面向对象—类和对象、方法

    1. 面向对象和面向过程思想 OC是面向对象的,C是面向过程的.面向对象和面向过程只是解决问题的两种不同思想 1. 面向对象和面向过程的区别 1) 以用电脑听歌为例子 a) 面向过程 ➢ 打开电脑 ➢ ...

  7. Vue使用Echarts以及Echarts配置分享

    一.本篇文章将给大家分享如何在vue中使用echart以及echart各项配置,这些配置都是工作中比较常见以及常用到的,所以给大家分享下,希望对大家有用. 二.vue中使用echart. 1.首先下载 ...

  8. php的定界符<<<eof的问题

    在php的编程过程中难免会遇到输出大段的html和javascript脚本的情况,可都放在具体的地方的时候,路由不好处理,而且比较浪费时间 如果按照传统的输出方法,按照字符串输出的话,需要大量的转义字 ...

  9. ##6.1 Neutron控制节点-- openstack pike

    ##6.1 Neutron控制节点 openstack pike 安装 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ##6.1 Neutron控制节 ...

  10. ssh免密验证,shell批量设置

    ssh免密验证,shell批量设置 #ssh免密验证,shell自动设置 echo '#!/bin/sh . /etc/init.d/functions [[ -f /usr/bin/expect ] ...