02numpy
一. Numpy定义
一个在Python中做科学计算的基础库,重在数值计算,也是大部分PYTHON科学计算库的基础库,多用于在大型、多维数组上执行数值运算
二. Numpy使用
1.创建数组

2.numpy中的数组类型

3.数组类型的操作

4.修改数组形状

b=a.reshape(3,4)
b才是(3,4)的数组
5.数组和数的计算

6.数组和数组的计算

广播原则:如果两个数组的后缘维度的轴长相符或其中一方的长度为1,则认为他们广播兼容的。广播会在缺失或长度为1的维度上进行。
三. 轴axis

四. Numpy读取数据
1.格式及参数介绍
np.loadtxt(fname,dtype=np.float,delimiter=None,skiprows=0,usecols=None,unpack=False)
l dtype:指定数组的数据类型
l delimiter:分隔字符串
l skiprows:跳过的行数
l usecols:读取指定的列,索引,元组类型
l unpack:如果True,读入属性将分别写入不同变量

2.转置
1)t.transpose()
2)t.swapaxes(1,0)
3)t.T
五.数据处理
1.索引和切片

2.数组的切片修改

3.其他修改方式
1)布尔索引:将数组中小于0的数赋值为0

2)三元运算符:将数组中大于10的赋值为10,小于10的赋值为0

3)clip裁剪:小于10的替换为10,大于18的替换为18,nan不变

五. numpy中的nan和inf
1. nan
1) nan不是一个数字
出现nan:
l 当我们读取本地的文件为float的时候,如果有缺失,就会出现nan
l 当做了一个不合适的计算的时候(比如无穷大(inf)减去无穷大)
2)nan和nan是不相等的
利用该特性,可以用np.count_nonzero(t!=t)
将nan替换为其他值t[np.isnan(t)]=0
3) 常用的统计数组

4)nparray填充均值

2. inf表示无穷
六. 数组拼接

七. 数组的行列交换

八. numpy的其他方法
1.获取最大值最小值的位置
l np.argmax(t,axis=0)
l np.argmin(t,axis=1)
2.创建一个全0的数组: np.zeros((3,4))
3.创建一个全1的数组:np.ones((3,4))
4.创建一个对角线为1的正方形数组(方阵):np.eye(3)
5.生成随机数

6.注意点

02numpy的更多相关文章
- python就业班-淘宝-目录.txt
卷 TOSHIBA EXT 的文件夹 PATH 列表卷序列号为 AE86-8E8DF:.│ python就业班-淘宝-目录.txt│ ├─01 网络编程│ ├─01-基本概念│ │ 01-网络通信概述 ...
随机推荐
- Codeforces - 1114B - Yet Another Array Partitioning Task - 构造 - 排序
https://codeforces.com/contest/1114/problem/B 一开始叫我做,我是不会做的,我没发现这个性质. 其实应该很好想才对,至少要选m个元素,其中m个作为最大值,从 ...
- Codeforces 711B 【模拟】
比赛的时候绝壁打麻烦了... 考虑的好麻烦...wa7...还要判断出来的是不是positive的... 好吧..认了.. #include<cstdio> #include <ma ...
- 开挂的map
转自:http://blog.csdn.net/sunshinewave/article/details/8067862 #include<iostream> #include<ma ...
- python __builtins__ set类 (60)
60.'set', 转换为集合类型 class set(object) | set() -> new empty set object | set(iterable) -> new se ...
- EasyUI创建选项卡并判断是否打开
//创建选项卡:判断选项卡是否打开,如果以打开则定位到选项卡,否则创建 function addPanel(title) { var bol = $('#main_tabs').tabs('exist ...
- weui button的使用
1.迷你按钮的使用 <a href="javascript:;" class="weui-btn weui-btn_primary weui-btn_mini&qu ...
- git apply
1. git 安装 2.git 与服务器的验证 1.生成ssh ssh-keygen -t rsa -C "1107247128@qq.com" 2.查看生成的pub文件, ...
- multiprocessing多进程模块
1 基本理解 python不支持真多线程,无法在单进程中调用多核cpu.对于cpu密集型任务,可以使用多进程.python会调用OS原生多进程,运行在多核上,以此提高运行速度. 2 基本实现 impo ...
- LightOj 1088 - Points in Segments (二分枚举)
题目链接: http://www.lightoj.com/volume_showproblem.php?problem=1088 题目描述: 给出一个n位数升序排列的数列,然后q个查询,每个查询问指定 ...
- 洛谷 P2841 A*B Problem
https://www.luogu.org/problemnew/show/P2841 根本不会啊... 大概就是:如果两个数模a的结果相同,那么它们前面同时加上一个0或1后模a的结果仍然相同,因此可 ...