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" )

datafilter1 \& 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')

相关推荐
leisoo80974 小时前
100GBA股股票数据怎么存ClickHouseRedisMySQLJSON完整对比
大数据·linux·服务器·开发语言·python
WangYan20224 小时前
基于XGBoost与AI的生态—地学多源数据建模:植被与土地利用识别、土壤碳氮空间预测、生物多样性驱动机制、土壤微生物功能预测、生态退化与风险识别
python·机器学习·xgboost
金銀銅鐵6 小时前
[Python] 借助 turtle 逐字展示唐诗《金缕衣》
python
Python大数据分析@8 小时前
使用大模型MCP采集数据,爬虫已经无门槛
python·网络爬虫
quantdash_cc8 小时前
告别自建 Requests/BS4 网页爬虫:基于 QuantDash 搭建零维保的高性能量化行情流水线
开发语言·爬虫·python·pandas·量化·quantdash
65岁退休Coder9 小时前
LangChain v1.3.4 笔记 - 07 补充:链式调用 LCEL
后端·python·langchain
卷无止境9 小时前
FastAPI 部署在 Nginx 后面到底该怎么配
后端·python
半亩码田9 小时前
C#转Python第3.1篇:Python 的 class 没有访问修饰符?面向对象的另一条路
开发语言·python·c#
Wzx19801210 小时前
python沙箱和docker沙箱你选对了吗?
开发语言·python·docker
Python私教10 小时前
签名 URL 刷新导致审批失效?别急着删掉所有 query
python·安全