np.meshgrid()

meshgrid 传入两个一维数组,返回第一个二维数组用第一个传入的一维数组为行,第二个传入的一维数组为列
返回的第二个数组是以第二个传入的一维数组为行,第一个一维数组为列

  1. import numpy as np
  2. import matplotlib.pyplot as plt
  3. import pylab
  4. points = np.arange(-5,5,0.01)
  5. #meshgrid 传入两个一维数组,返回第一个二维数组用第一个传入的一维数组为行,第二个传入的一维数组为列
  6. #返回的第二个数组是以第二个传入的一维数组为行,第一个一维数组为列
  7. xs,ys = np.meshgrid(points,points)
  8. print(xs == ys.T) #True
  9.  
  10. z = np.sqrt(ys**2 + xs**2)
  11. plt.imshow(z,cmap= plt.cm.gray)
  12. plt.colorbar()
  13. pylab.show()

筛选

真值表

  1. #真值表
  2. import numpy as np
  3. import numpy.random as np_random
  4. x_arr = np.array([1.1, 1.2, 1.3, 1.4, 1.5])
  5. y_arr = np.array([2.1, 2.2, 2.3, 2.4, 2.5])
  6. cond = np.array([True, False, True, True, False])
  7. result = [(x if c else y) for x, y, c in zip(x_arr, y_arr, cond)] # 通过列表推到实现
  8. print(result)
  9.  

where:掩码if筛选

  1. #若where的第2、3个参数不是数组,则第2、3个参数将通过掩码组成掩码形状相同的数组
  2. np.where(cond,x_arr,y_arr)
  3. arr = np_random.randn(4,4)
  4. print(arr)
  5. print(np.where(arr>0,2,-2))
  6.  
  7. #where多条件
  8.  
  9. cond_1 = np.array([True, False, True, True, False])
  10. cond_2 = np.array([False, True, False, True, False])
  11. # 传统代码如下
  12. result = []
  13. for i in range(len(cond)):
  14. if cond_1[i] and cond_2[i]:
  15. result.append(0)
  16. elif cond_1[i]:
  17. result.append(1)
  18. elif cond_2[i]:
  19. result.append(2)
  20. else:
  21. result.append(3)
  22. print(result)
  23. result = np.where(cond_1 & cond_2, 0, \
  24. np.where(cond_1, 1, np.where(cond_2, 2, 3)))

numpy 数据处理的更多相关文章

  1. Numpy数据处理函数

    Numpy函数介绍 import numpy as np #sqrt 计算各元素的平方根 arr = np.arange(10) np.sqrt(arr) array([0. , 1. , 1.414 ...

  2. Python学习最佳路线图

    python语言基础(1)Python3入门,数据类型,字符串(2)判断/循环语句,函数,命名空间,作用域(3)类与对象,继承,多态(4)tkinter界面编程(5)文件与异常,数据处理简介(6)Py ...

  3. 用Python实现一个词频统计(词云+图)

    第一步:首先需要安装工具python 第二步:在电脑cmd后台下载安装如下工具: (有一些是安装好python电脑自带有哦) 有一些会出现一种情况就是安装不了词云展示库 有下面解决方法,需看请复制链接 ...

  4. 【转】Python学习路线

    Python最佳学习路线图 python语言基础 (1)Python3入门,数据类型,字符串 (2)判断/循环语句,函数,命名空间,作用域 (3)类与对象,继承,多态 (4)tkinter界面编程 ( ...

  5. 利用python实现简单词频统计、构建词云

    1.利用jieba分词,排除停用词stopword之后,对文章中的词进行词频统计,并用matplotlib进行直方图展示 # coding: utf-8 import codecs import ma ...

  6. Python最佳学习路线图

    python语言基础(1)Python3入门,数据类型,字符串(2)判断/循环语句,函数,命名空间,作用域(3)类与对象,继承,多态(4)tkinter界面编程(5)文件与异常,数据处理简介(6)Py ...

  7. python初学者必看的学习路线

    Python是近几年比较火的编程语言之一,因为人工智能的火爆,让很多人都想从事python开发.很多零基础学员在学习python的时候都会走一些弯路,下面小编就为大家分享python学习路线图,帮助零 ...

  8. (2018干货系列四)最新Python学习路线整合

    怎么学Python Python是一种面向对象的解释型计算机程序设计语言,纯粹的自由软件,常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起. Python初级开 ...

  9. 【最新发布】最新Python学习路线,值得收藏

    随着AI的发展,Python的薪资也在逐年增加,但是很多初学者会盲目乱学,连正确的学习路线都不清楚,踩很多坑,为此经过我多年开发经验以及对目前行业发展形式总结出一套最新python学习路线,帮助大家正 ...

随机推荐

  1. pl/sql中文乱码

    增加系统变量变量名:NLS_LANG变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK

  2. OC照片选择器MJPhotoBrowser

    图片选择器,看cocoachina发现一个有趣的框架,很好用,分享一下,其实做出该功能我之前写过一篇博客,使用转场动画写的,就是图片的手势缩放没写,有兴趣可以看看 效果图: github地址:http ...

  3. nessus的安装

    nessus安装 .下载地址 http://www.tenable.com/products/nessus/select-your-operating-system .获取注册码 www.nessus ...

  4. Always On 集群监听创建失败问题

    创建SQL Server Always On监听失败如下 需要增加:1.登陆服务器的域账号创建计算机对象的权限,2.集群名称账号在域环境中创建计算机对象的权限 如果是重建监听:需要3.先删除原先的监听 ...

  5. clone git 项目到 非空目录

    如果我们往一个非空的目录下 clone git 项目,就会提示错误信息: fatal: destination path '.' already exists and is not an empty ...

  6. C 语言boolean 值判断

    printf("%d\n", !0);       1           1 printf("%d\n", !0);     #include <std ...

  7. cookie、session和token

    https://zhuanlan.zhihu.com/p/25495290?utm_source=wechat_session&utm_medium=social 一.cookie 众所周知, ...

  8. (转)从拜占庭将军问题谈谈为什么pow是目前最好的共识机制

    我们知道基于区块链技术现在有很多的共识机制,包括不限于POW,POS,DPOS,PBFT……,我先不说为什么我最认可POW,我们先来看看著名的拜占庭将军问题: 拜占庭帝国即中世纪的土耳其,拥有巨大的财 ...

  9. CSS选择器操作大全

    一,CSS选择器分类 二,选择器语法 1,基本选择器语法 选择器 类型 功能描述 *  通配选择器  选择文档中所以HTML元素 E  元素选择器 选择指定类型的HTML元素 #id  ID选择器 选 ...

  10. 单点登录开源架构之CAS

    服务端 开源地址:https://github.com/apereo/cas Release版:https://github.com/apereo/cas/releases Windows下使用下载c ...