Python where函数保姆级使用教程

目录
  • 一、where函数的定义
  • 二、where函数实例
    • 找出数列中大于某个数的位置索引
    • 数列中大于5取‘m_5’否则取’lq_5’
    • 数列中小于5取一个值否则取另一个值
    • 数列中是2的倍数取一个值否则取另一个值
    • 找出数据框中非0数据‍

你应该听说过,应用Python,可以让你处理一天的重复工作量,缩短到几分钟甚至更短。从此解放上班时间,研究更多更有效率的工作方法。进一步提升工作效率,让工作更出彩。这不是广告,这是实锤图片。

本文和你一起探索Python常用函数合集,让你以最短的时间明白这些函数的原理。也可以利用碎片化的时间巩固这些函数,让你在处理工作过程中更高效。

一、where函数的定义

where函数是numpy库中的,通常需要先加载numpy库,再调用该函数。函数的基本调用语法有两种,一种是:

import numpy as np
np.where(arry)

此时,np.where函数输出arry中“真”值的坐标(‘真’也可以理解为非0)。或者说np.where函数从arry中返回满足特定条件的元素。比如,它会返回满足特定条件数值的索引位置。

另一种是:

import numpy as np
np.where(cond, x, y)

此时,np.where函数满足cond条件输出x,不满足输出y。为了让大家对where函数定义有更清晰的理解,接下来以具体实例进行阐述,方便大家理解记忆。

二、where函数实例

找出数列中大于某个数的位置索引

y = np.array([1, 5, 6, 8, 1, 7, 3, 6, 9])
print(np.where(y>5))

得到结果:

(array([2, 3, 5, 7, 8], dtype=int64),)

此时,np.where函数返回数值大于5的索引位置。

数列中大于5取‘m_5’否则取’lq_5’

y = np.array(range(1, 10))
print(y)
print(np.where(y>5, 'm_5', 'lq_5'))

得到结果:

[1 2 3 4 5 6 7 8 9]
['lq_5' 'lq_5' 'lq_5' 'lq_5' 'lq_5' 'm_5' 'm_5' 'm_5' 'm_5']

y是一个初始值为1,终值为9,步长为1的等差数列。此时,np.where函数满足y>5输出’m_5’,不满足输出’lq_5’。

数列中小于5取一个值否则取另一个值

print(np.arange(10))
print(np.where(np.arange(10)<5, '吃苹果', '吃榴莲'))

得到结果:

[0 1 2 3 4 5 6 7 8 9]

[‘吃苹果’ ‘吃苹果’ ‘吃苹果’ ‘吃苹果’ ‘吃苹果’ ‘吃榴莲’ ‘吃榴莲’ ‘吃榴莲’ ‘吃榴莲’ ‘吃榴莲’]

此时,np.where函数满足np.arange(10)中数值小于5输出’吃苹果’,不满足输出’吃榴莲’。

数列中是2的倍数取一个值否则取另一个值

y = np.array(range(1, 10))
print(y)
print(np.where(np.mod(y, 2)==0, '2b', 'n_2b'))

得到结果:

[1 2 3 4 5 6 7 8 9]
['n_2b' '2b' 'n_2b' '2b' 'n_2b' '2b' 'n_2b' '2b' 'n_2b']

此时,np.where函数满足y中数值除以2余数为0输出’2b’,不满足输出’n_2b’。

找出数据框中非0数据‍

x = np.array([[0, 1, 2], [3, 0, 0], [6, 0, 8]])
print(x[np.where(x)])

得到结果:

[1 2 3 6 8]

此时,np.where函数取出x中所有非0数,生成一个新的数列。

到此这篇关于Python where函数保姆级使用教程的文章就介绍到这了,更多相关Python where函数内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • python 解决mysql where in 对列表(list,,array)问题

    例如有这么一个查询语句: select * from server where ip in (....) 同时一个存放ip 的列表 :['1.1.1.1','2.2.2.2','2.2.2.2'] 我们希望在查询语句的in中放入这个Ip列表,这里我们首先会想到的是用join来对这个列表处理成一个字符串,如下: >>> a=['1.1.1.1','2.2.2.2','2.2.2.2'] >>> ','.join(a) '1.1.1.1,2.2.2.2,2.2.2.2' 可

  • 详解Python中where()函数的用法

    where()的用法 首先强调一下,where()函数对于不同的输入,返回的只是不同的. 1当数组是一维数组时,返回的值是一维的索引,所以只有一组索引数组 2当数组是二维数组时,满足条件的数组值返回的是值的位置索引,因此会有两组索引数组来表示值的位置 例如 >>>b=np.arange(10) >>>b array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>>np.where(b>5) (array([6, 7, 8,

  • Python where函数保姆级使用教程

    目录 一.where函数的定义 二.where函数实例 找出数列中大于某个数的位置索引 数列中大于5取‘m_5’否则取’lq_5’ 数列中小于5取一个值否则取另一个值 数列中是2的倍数取一个值否则取另一个值 找出数据框中非0数据‍ 你应该听说过,应用Python,可以让你处理一天的重复工作量,缩短到几分钟甚至更短.从此解放上班时间,研究更多更有效率的工作方法.进一步提升工作效率,让工作更出彩.这不是广告,这是实锤图片. 本文和你一起探索Python常用函数合集,让你以最短的时间明白这些函数的原理

  • Python lambda函数保姆级使用教程

    目录 一.lambda函数的定义    二.lambda函数实例 lambda函数和普通函数对比 求一个一元二次方程 和高阶函数filter配合使用 和sorted函数配合使用 你应该听说过,应用Python,可以让你处理一天的重复工作量,缩短到几分钟甚至更短.从此解放上班时间,研究更多更有效率的工作方法.进一步提升工作效率,让工作更出彩.这不是广告,这是实锤图片. 一.lambda函数的定义    lambda函数是Python中常用的内置函数,又称为匿名函数.和普通函数相比,它只有函数体,省

  • Python Map函数保姆级使用教程

    https://blog.csdn.net/qq_32532663/article/details/125246898?spm=1001.2014.3001.5502

  • Python clip与range函数保姆级使用教程

    目录 一.range函数的定义 二.range函数实例 省略起始值start和步长step 设置初始值终值和步长 三.random.randint函数的定义 四.random.randint函数实例 随机生成5个[0, 6)之间的整数 随机生成[-2, 9)之间1维数组 随机生成[5, 10)之间的3行5列数据框 五.clip函数的定义 六.clip函数实例 把数组中的值应用clip函数进行截取 把数据框中的值应用clip函数进行截取 你应该听说过,应用Python,可以让你处理一天的重复工作量

  • JavaScript ESLint插件保姆级使用教程

    目录 一文带你了解 ESLint 安装 配置 React 插件 Airbnb 的配置 一文带你了解 ESLint 在平时开发中,我们总是希望尽可能写出最佳代码,但有时总会出错,然后需要花数小时定位 bug,最后发现只是拼写错误,这很令人沮丧.好在一些工具可以帮助我们在输入过程中检查代码的正确性.这些工具无法表明代码能否实现预期效果,但可以帮助我们避免语法错误. 如果之前使用过 C#这种静态语言,那么你应该很熟悉 IDE 给出的这种警告信息. Douglas Crockford 开发的 JSLin

  • 用Python简单实现个贪吃蛇小游戏(保姆级教程)

    一.前言 本期介绍 Python 练手级项目--贪吃蛇! 原本想推荐一个贪吃蛇的开源项目:python-console-snake,但由于该项目最近一次更新是 8 年前,而且在运行的时候出现了诸多问题.索性我就动手用 Python 重新写了一个贪吃蛇游戏. 下面我们就一起用 Python 实现一个简单有趣的命令行贪吃蛇小游戏,启动命令: git clone https://github.com/AnthonySun256/easy_games cd easy_games python snake

  • python tarfile压缩包操作保姆级教程

    目录 前言 1.tarfile 2.处理 open 后的 TarFile 对象 3.处理2中返回的 TarInfo 对象 4.示例 前言 上次写博客还在去年的8月底了,期间有了小宝,换工作等诸多事宜让我踩坑采的起飞,时隔4个月,逐渐找回状态.这篇的主题是python的第三方库zipfile,因工作中要处理大量的压缩包zip文件,所以趁着自由时间整理输出下,以提高下工作的愉悦感. 1.tarfile 这个工具可以帮我们解决 zip 压缩包的创建.读取.写入.添加.列出内部所有的成员.更高效的处理压

  • Python入门教程(十九)python的函数详解

    目录 创建函数 调用函数 参数 默认参数值 以 List 传参 返回值 关键字参数 任意参数 pass 语句 递归 函数是一种仅在调用时运行的代码块. 可以将数据(称为参数)传递到函数中. 函数可以把数据作为结果返回. 创建函数 在 Python 中,使用 def 关键字定义函数: 实例 def my_function(): print("Hello from a function") 调用函数 如需调用函数,请使用函数名称后跟括号: 实例 def my_function(): pri

  • Python中函数的用法实例教程

    本文以数值计算为例讲述了Python中函数的用法,分享给大家供大家参考借鉴之用.具体如下: 我们都知道圆的面积计算公式为: S = πr2 当我们知道半径r的值时,就可以根据公式计算出面积.假设我们需要计算3个不同大小的圆的面积: r1 = 12.34 r2 = 9.08 r3 = 73.1 s1 = 3.14 * r1 * r1 s2 = 3.14 * r2 * r2 s3 = 3.14 * r3 * r3 当代码出现有规律的重复的时候,你就需要当心了,每次写3.14 * x * x不仅很麻烦

  • python中的函数用法入门教程

    本文较为详细的讲述了Python程序设计中函数的用法,对于Python程序设计的学习有不错的借鉴价值.具体分析如下: 一.函数的定义: Python中使用def关键字定义函数,函数包括函数名称和参数,不需要定义返回类型,Python能返回任何类型: #没有返回值的函数,其实返回的是None def run(name): print name,'runing' #函数体语句从下一行开始,并且第一行必须是缩进的 >>>run('xiaoming') xiaoming runing >&

随机推荐