【数据分析面试】3.编写数据选取函数(Python)

在这里插入图片描述

题目

给定了一个名为 students_df 的学生数据表格

nameagefavorite_colorgrade
Tim Voss19red91
Nicole Johnson20yellow95
Elsa Williams21green82
John James20blue75
Catherine Jones23green93

编写一个名为 grades_colors 的函数,以选择仅当学生喜欢的颜色是绿色或红色且他们的成绩高于90时的行。

示例:

输入:

import pandas as pdstudents = {"name" : ["Tim Voss", "Nicole Johnson", "Elsa Williams", "John James", "Catherine Jones"], "age" : [19, 20, 21, 20, 23], "favorite_color" : ["red", "yellow", "green", "blue", "green"], "grade" : [91, 95, 82, 75, 93]}students_df = pd.DataFrame(students)

输出:

def grades_colors(students_df) ->
nameagefavorite_colorgrade
Tim Voss19red91
Catherine Jones23green93

答案

答案代码

首先使用 isin() 方法选择喜欢的颜色为绿色或红色的行,然后使用条件筛选出成绩大于90的行,最后返回满足条件的结果。

def grades_colors(students_df):# 选择喜欢的颜色为绿色或红色,且成绩大于90的行result_df = students_df[(students_df['favorite_color'].isin(['green', 'red'])) & (students_df['grade'] > 90)]return result_df

Python代码 —— 选取特定值

# 多条件选取
new_df = df[(df['country'].isin(['Australia', 'New Zealand'])) &(df['points'] >= 95)
]# 使用 loc
new_df = df.loc[(df['country'].isin(['Australia', 'New Zealand'])) &(df['points'] >= 95)
]# 同一列不同值:年份为87、88、99年
df[(df['Year'] == 1987) |(df['Year'] == 1988) |(df['Year'] == 1999)]# 在两个连续值之间:1987-1988年之间
df[df['Year'].isin([1987, 1988])]# 根据特定条件,选择指定列的内容:87年,Size为High的数据中,I、M、Y、O四列
select_columns = ['I', 'M', 'Y', 'O']
df[(df['Year'] == 1987) &(df['Size'] == 'High')][select_columns]# 使用 loc,选择指定列的内容
df.loc[(df['Year'] == 1987) &(df['Outlet_Size'] == 'High'), select_columns]

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/576398.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

YOLOv5-小知识记录(三)

0. 写在前面 本篇介绍SPP模块、FPN模块模块,主要也是对YOLOv5的内容的补充: Yolo系列算法-理论部分-YOLOv4-CSDN博客 Yolo系列算法-理论部分-YOLOv5-CSDN博客 上一篇: YOLOv5-小知识记录(二)-CSDN博客 1. SPP模块 Spatial Pyramid Pooling…

探索数据库--------------mysql主从复制和读写分离

目录 前言 为什么要主从复制? 主从复制谁复制谁? 数据放在什么地方? 一、mysql支持的复制类型 1.1STATEMENT:基于语句的复制 1.2ROW:基于行的复制 1.3MIXED:混合类型的复制 二、主从复制的工作过程 三个重…

地物波谱库共享网站汇总

ENVI自5.2版本重新梳理了原有的标准波谱库,新增一些物质波谱,在ENVI5.6中存放在…\Harris\ENVI56\ resource\speclib,分别存放在四个文件夹中,储存为ENVI波谱库格式,有两个文件组成:.sli和.hdr。 ENVI保留…

2014年认证杯SPSSPRO杯数学建模B题(第二阶段)位图的处理算法全过程文档及程序

2014年认证杯SPSSPRO杯数学建模 B题 位图的处理算法 原题再现: 图形(或图像)在计算机里主要有两种存储和表示方法。矢量图是使用点、直线或多边形等基于数学方程的几何对象来描述图形,位图则使用像素来描述图像。一般来说&#…

|行业洞察·有色金属|《2000年以来各国黄金储备分析:金砖国家增持一有望持续助推金价中枢抬升》

报告内容的详细解读: 1. 全球央行黄金储备趋势 2011年以来,全球央行持续增加黄金储备,年均增持超过1000吨,成为黄金需求的重要一极。截至2023年,央行黄金储备占比不足5%的国家数量占比达到45%,而美国、德…

AI面试工具:为你的招聘需求选择正确的解决方案

如果你是一名招聘经理,那么考虑到市场上有多种AI面试工具,你完全有理由感到困惑。在这种情况下,人们通常会选择谷歌上排名靠前的单向视频面试工具,这都要归功于SEO。但我们不希望你随波逐流,在投资了数万元的招聘工具后…

day56 动态规划part13

300. 最长递增子序列 中等 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组派生而来的序列,删除(或不删除)数组中的元素而不改变其余元素的顺序。例如,[3,6,2,7] 是数组 [0,3,1,6,2,2,…

云原生架构(微服务、容器云、DevOps、不可变基础设施、声明式API、Serverless、Service Mesh)

前言 读完本文,你将对云原生下的核心概念微服务、容器云、DevOps、Immutable Infrastructure、Declarative-API、Serverless、Service Mesh 等有一个相对详细的了解,帮助你快速掌握云原生的核心和要点。 因题主资源有限, 这里会选用部分云服务商的组件进…

vant checkbox 复选框 样式改写

修改前 修改后 基于 vant&#xff1a; 4.8.3 unocss: 0.53.4 <van-checkbox-group v-model"query.zczb" shape"square" class"text-16 w-100% flex flex-wrap"><template v-for"item in registerCapitalOption"><v…

git配置SSH 密钥

git配置SSH 密钥 1.window配置ssh1.安装ssh2.安装 Git&#xff08;安装教程参见安装Git&#xff09;并保证版本大于 1.9![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/e59f4e16b83c45649f1d9d7bd6bf92c0.png)3.SSH 尽量保持最新&#xff0c;6.5之前的版本由于使用…

12.路由安装

路由安装 安装vscode https://code.visualstudio.com/ 使用vscode打开后台系统项目 在终端运行npm run dev即可运行项目 src/assets中存放静态资源 src/components中存放组件 app.vue是主界面&#xff08;入口页面&#xff09; 注释main.ts中的import ./style.css package.j…

经纬恒润AUTOSAR产品成功适配芯来RISC-V车规内核

近日&#xff0c;经纬恒润AUTOSAR基础软件产品INTEWORK-EAS&#xff08;ECU AUTOSAR Software&#xff0c;以下简称EAS&#xff09;在芯来提供的HP060开发板上成功适配芯来科技的RISC-V处理器NA内核&#xff0c;双方携手打造了具备灵活、可靠、高性能、强安全性的解决方案。这极…