DataFrame中的isin查询使用

代码实例:

1)包含

df1=df[ df["学号"].isin(myNumber)]

2)不包含

df1=df[ ~df["学号"].isin(myNumber)]

3)多条件

或(满足某一个即可)

filt_1 = df['name'].isin(['网易','百度'])

filt_2 = df['age'] == df['age'].min()

df2= df[ filt_1 | filt_2 ]

并且(同时满足多个条件)

filter1 = data["Gender"].isin(["Female"])

filter2 = data["Team"].isin(["Engineering", "Distribution", "Finance" ])

data[filter1 & filter2]

=======================================================

  1. DataFrame条件查询操作

获取DataFrame中满足条件的数据

基本格式:

df.loc[条件...]

df.query('条件...')

loc和query如果跟多个条件可以用&、|表示条件之间的关系

#获取Age大于60且小于80的科学家信息

scientists.loc[(scientists['Age']>60)&(scientists['Age']<80)]

scientists.loc[(scientists.Age>60)&(scientists.Age<80)]

scientists.query('Age > 60 & Age < 80')

  1. DataFrame分组聚合操作

指定列分组,并对分组数据的相应列进行行相应的聚合操作

基本格式:

df.groupby(列标签,...).列标签.聚合函数()

df.groupby(列标签,...).agg({'列标签':'聚合',...})

df.groupby(列标签,...).aggregate({'列标签':'聚合',...})

如果聚合的列标签只有一个,则返回的是一个Series数据

常见聚合函数:

方式 说明

mean 计算平均值

max 计算最大值

min 计算最小值

sum 求和

count 计数(非空数据数目)

#按照Occupation职业分组,并计算每组年龄的平均值

scientists.groupby('Occupation').Age.mean()

scientists.groupby('Occupation')['Age'].mean()

#按照Occupation职业分组,并计算每组人数和年龄的平均值

scientists.groupby('Occupation').agg({'Name':'count','Age':'mean'})

  1. DataFrame排序操作

基本格式:

方法 说明

df.sort_values(by=['列标签'],ascending=True) 将DataFrame按照指定列标签按升序进行排序

df.sort_index(ascending=True) 将DataFrame按照行标签升序排序

ascending参数默认是True表示升序

seies也可以使用sort_values和sort_index函数进行排序,只不过series的sort_values方法没有by参数

#按照 Age 从小到大进行排序

scientists.sort_values(by=['Age'],ascending=True)

#按照 Age 从大到小进行排序

scientists.sort_values(by=['Age'],ascending=False)

按照行标签从大到小进行排序

scientists.sort_index(ascending=False)

  1. nlargest和nsmallest函数

基本格式:

方法 说明

df.nlargest(n,columns='列标签')

按照columns指定的列进行降序,并取前n行数据

df.nsmallest(n,columns='列标签') 按照columns指定的列进行升序,并取前n行数据

#获取 Age 最大的前 3 行数据

scientists.nlargest(3,columns='Age')

#获取 Age 最小的前 3 行数据

scientists.nsmallest(3,columns='Age')

相关推荐
喵手5 小时前
Python爬虫实战:旅游数据采集实战 - 携程&去哪儿酒店机票价格监控完整方案(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集结果csv导出·旅游数据采集·携程/去哪儿酒店机票价格监控
2501_944934735 小时前
高职大数据技术专业,CDA和Python认证优先考哪个?
大数据·开发语言·python
helloworldandy5 小时前
使用Pandas进行数据分析:从数据清洗到可视化
jvm·数据库·python
肖永威6 小时前
macOS环境安装/卸载python实践笔记
笔记·python·macos
TechWJ6 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
枷锁—sha7 小时前
【SRC】SQL注入WAF 绕过应对策略(二)
网络·数据库·python·sql·安全·网络安全
abluckyboy7 小时前
Java 实现求 n 的 n^n 次方的最后一位数字
java·python·算法
喵手7 小时前
Python爬虫实战:构建各地统计局数据发布板块的自动化索引爬虫(附CSV导出 + SQLite持久化存储)!
爬虫·python·爬虫实战·零基础python爬虫教学·采集数据csv导出·采集各地统计局数据发布数据·统计局数据采集
天天爱吃肉82188 小时前
跟着创意天才周杰伦学新能源汽车研发测试!3年从工程师到领域专家的成长秘籍!
数据库·python·算法·分类·汽车
m0_715575348 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python