首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Pandas按班拆分Excel文件+按班排名和按级排名

Pandas groupby rank, 今天学习有: 1。用pandas.groupby+apply+to_excel进行按‘班别’对一个Excel文件拆分成一个班一个文件操作。...简单又强大 2.pandas+groupby+rank利用总分按班排名与按级排名 原数据表 # -*- coding: UTF-8 -*- import pandas as pd df=pd.read_excel...('data_1.xlsx') """ print(df) #方向上删除‘学号’‘语文’ df=df.drop(['学号','语文'],axis=1) print(df) #方向上删除index...Excel文件 #df.groupby('班别').apply(lambda x: x.to_excel(f'分/{x.name}.xlsx',index=False)) #按语文成绩排名,并添加‘名...’并输入数字 #df['名']=df['语文'].rank(ascending=0,method='dense') #只是按数学成绩排名,并重新列表,没有输入名次 #d=df.sort_values

1.1K30

Python替代Excel Vba系列(四):课程表分析与动态可视化图表

如下: df['sj'].apply(lambda x: '数英' if x in cond else '其他') ,根据科目,划分为"数英"或"其他" 把划分结果添加 sj_class...我们把汇总问题主键列出,利用 pandas groupby 方法即可快速做汇总。 如下: df.groupby(['sj_class']) ,按 sj_class 分组。....reset_index() ,调用 groupby 后,分组 sj_class 会作为 index ,因此这里只是把 sj_class 重新设置为。 ---- 来看看实际占比吧。...如下: 这次我们汇总主键是 级别和主科目。 可以看到其实与之前流程基本一致,只是分组时加上了 grade 字段。...看看图表吧: 可以看到五年级数英课时占比最大(为什么不是六年级主科目占比最大?)。 七、八年级数英没有其他科目占比大(初一初二数英课时减少了?)。

1.7K20
您找到你想要的搜索结果了吗?
是的
没有找到

pandas这几个函数,我看懂了道家“一生二、二生三、三生万物”

01 nunique number of unique,用于统计各数据唯一值个数,相当于SQL语句中count(distinct **)用法。...如果说前面的三个函数主要适用于pandas一维数据结构series的话(nunique也可用于dataframe),那么接下来个函数则是应用于二维dataframe。...当然,groupby强大之处在于,分组依据字段可以不只一。例如想统计各班每门课程平均分,语句如下: ? 不只是分组依据可以用多,聚合函数也可以是多个。...以上参数中,最重要有4个: values:用于透视统计对象列名 index:透视后行索引所在列名 columns:透视后索引所在列名 aggfunc:透视后聚合函数,默认是求均值 这里仍然以求各班每门课程平均分为例...groupby+unstack=pivot_table 看到这里,会不会有种顿悟感觉:麻雀虽小,玩转却是整个天空;pandas接口有限,阐释却有道家思想:一生二、二生三、三生万物…… ?

2.4K10

SQL、Pandas和Spark:如何实现数据透视表?

在上述简介中,有个关键词值得注意:排列和汇总,其中汇总意味着要产生聚合统计,即groupby操作;排列则实际上隐含着使汇总后结果有序。...上述需求很简单,需要注意以下点: pandaspivot_table还支持其他多个参数,包括对空值操作方式等; 上述数据透视表结果中,无论是行中个key("F"和"M")还是个key...03 Spark实现数据透视表 Spark作为分布式数据分析工具,其中spark.sql组件功能上与Pandas极为相近,某种程度上个人一直将其视为Pandas大数据中实现。...上述分析数据透视表中,将其定性为groupby操作+行转列pivot操作,那么SQL中实现数据透视表就将需要groupby和行转列项操作,所幸是二者均可独立实现,简单组合即可。...上述SQL语句中,仅对sex字段进行groupby操作,而后执行count(name)聚合统计时,由直接count聚合调整为个count条件聚合,即: 如果survived字段=0,则对name计数

2.5K30

Python pandas对excel操作实现示例

如果列名 (column name)没有空格,则列有种方式表达: df1['city'] df1.city 如果列名有空格,或者创建新(即该不存在,需要创建,第一次使用变量),则只能用第一种表达式...指定位置插入列 上面方法增加,位置都是放在最后。如果想要在指定位置插入列,要用 dataframe.insert() 方法。...假设我们要在 state 后面插入一,这一是 state 简称 (abbreviation)。 Excel 中,根据 state 来找到 state 简称 ,一般用 VLOOKUP 函数。...因为上面语句中没有指定连接类型,不匹配记录不会显示。...而在 pandas 进行分类汇总,可以使用 DataFrame groupby() 函数,然后再对 groupby() 生成 pandas.core.groupby.DataFrameGroupBy

4.4K20

我用Python展示Excel中常用20个操

Pandas Pandas中没有一个固定修改格式方法,不同数据格式有着不同修改方法,比如类似Excel中将创建时间修改为年-月-日可以使用df['创建时间'] = df['创建时间'].dt.strftime...Pandas pandas中交换也有很多方法,以交换示例数据中地址与岗位列为例,可以通过修改号来实现 ?...数据合并 说明:将或多数据合并成一 Excel Excel中可以使用公式也可以使用Ctrl+E快捷键完成多合并,以公式为例,合并示例数据中地址+岗位列步骤如下 ?...Pandas Pandas中对数据进行分组计算可以使用groupby轻松搞定,比如使用df.groupby("学历").mean()一行代码即可对示例数据学历进行分组并求不同学历平均薪资,结果与Excel...结束 以上就是使用Pandas来演示如何实现Excel中常用操作全部过程,其实可以发现Excel优点就是大多由交互式点击完成数据处理,而Pandas则完全依赖于代码,对于有些操作比如数据透视表

5.5K10

技术解析:如何获取全球疫情历史数据并处理

二、数据处理 首先将存储字典里面的数据保存到dataframe中,使用pandas里面的pd.DataFrame()当传进去一个字典形式数据之后可以转换为dataframe⬇️ ?...',inplace=True) 代码中subset对应值是列名,表示只考虑这,将这对应值相同行进行去重。...现在我们就需要各个大洲每天疫情数据,这时就用到了pandas里面的分组计算函数.groupby() # groupby 只进行分组,不会进行任何计算操作 grouped = df["data1"]....这所以我们pandas中进行处理,将缺失值填充为0,这样就搞定了。 ?...四、结束&彩蛋 回顾上面的过程,本次处理数据过程中使用语法都是pandas中比较基础语法,当然过程中也有很多步骤可以优化。

1.6K10

数据分析之Pandas VS SQL!

SQL VS Pandas SELECT(数据选择) SQL中,选择是使用逗号分隔列表(或*来选择所有): ? Pandas中,选择不但可根据列名称选取,还可以根据所在位置选取。...WHERE(数据过滤) SQL中,过滤是通过WHERE子句完成: ? pandas中,Dataframe可以通过多种方式进行过滤,最直观是使用布尔索引: ?...where子句中常常会搭配and, or, in, not关键词,Pandas中也有对应实现: SQL: ? Pandas: ?...where字句中搭配NOT NULL可以获得某个不为空项,Pandas中也有对应实现: SQL: ? Pandas: ? DISTINCT(数据去重) SQL: ? Pandas: ?...GROUP BY(数据分组) groupby()通常指的是这样一个过程:我们希望将数据集拆分为组,应用一些函数(通常是聚合),然后将这些组组合在一起: ?

3.1K20

不再纠结,一文详解pandasmap、apply、applymap、groupby、agg...

本文就将针对pandasmap()、apply()、applymap()、groupby()、agg()等方法展开详细介绍,并结合实际例子帮助大家更好地理解它们使用技巧。...首先读入数据,这里使用到全美婴儿姓名数据,包含了1880-2018年全美每年对应每个姓名新生儿数据,jupyterlab中读入数据并打印数据集一些基本信息以了解我们数据集: import pandas...三、聚合类方法 有些时候我们需要像SQL里聚合操作那样将原始数据按照某个或某些离散型进行分组再求和、平均数等聚合之后值,pandas中分组运算是一件非常优雅事。...3.1 利用groupby()进行分组 要进行分组运算第一步当然就是分组,pandas中对数据框进行分组使用到groupby()方法。...3.2 利用agg()进行更灵活聚合 agg即aggregate,聚合,pandas中可以利用agg()对Series、DataFrame以及groupby()后结果进行聚合。

4.9K10

(数据科学学习手札69)详解pandasmap、apply、applymap、groupby、agg

年全美每年对应每个姓名新生儿数据,jupyterlab中读入数据并打印数据集一些基本信息以了解我们数据集: import pandas as pd #读入数据 data = pd.read_csv...map()还有一个参数na_action,类似R中na.action,取值为'None'或'ingore',用于控制遇到缺失值处理方式,设置为'ingore'时串行运算过程中将忽略Nan值原样返回。...三、聚合类方法   有些时候我们需要像SQL里聚合操作那样将原始数据按照某个或某些离散型进行分组再求和、平均数等聚合之后值,pandas中分组运算是一件非常优雅事。...3.1 利用groupby()进行分组   要进行分组运算第一步当然就是分组,pandas中对数据框进行分组使用到groupby()方法,其主要使用到参数为by,这个参数用于传入分组依据变量名称,...3.2 利用agg()进行更灵活聚合   agg即aggregate,聚合,pandas中可以利用agg()对Series、DataFrame以及groupby()后结果进行聚合,其传入参数为字典

4.9K60

SQL、Pandas和Spark:常用数据查询操作对比

数据过滤在所有数据处理流程中都是重要一环,SQL中用关键字where实现,Pandas和Spark中也有相应接口。 Pandas。...where关键字,不过遗憾Pandaswhere和Numpy中where一样,都是用于对所有所有元素执行相同逻辑判断,可定制性较差。...但在具体使用中,where也支持种语法形式,一种是以字符串形式传入一个类SQL条件表达式,类似于Pandas中query;另一种是显示以各对象执行逻辑判断,得到一组布尔结果,类似于Pandas中...,但不聚合结果,即聚合前有N条记录,聚合后仍然有N条记录,类似SQL中窗口函数功能,具体参考Pandasgroupby这些用法你都知道吗?...03 小节 对标SQL标准查询语句中常用关键字,重点对Pandas和Spark中相应操作进行了介绍,总体来看,个计算框架均可实现SQL中所有操作,但Pandas实现接口更为丰富,传参更为灵活;而

2.4K20

不再纠结,一文详解pandasmap、apply、applymap、groupby、agg...

本文就将针对pandasmap()、apply()、applymap()、groupby()、agg()等方法展开详细介绍,并结合实际例子帮助大家更好地理解它们使用技巧。...首先读入数据,这里使用到全美婴儿姓名数据,包含了1880-2018年全美每年对应每个姓名新生儿数据,jupyterlab中读入数据并打印数据集一些基本信息以了解我们数据集: import pandas...None或ingore,用于控制遇到缺失值处理方式,设置为ingore时串行运算过程中将忽略Nan值原样返回。...三、聚合类方法 有些时候我们需要像SQL里聚合操作那样将原始数据按照某个或某些离散型进行分组再求和、平均数等聚合之后值,pandas中分组运算是一件非常优雅事。...3.1 利用groupby()进行分组 要进行分组运算第一步当然就是分组,pandas中对数据框进行分组使用到groupby()方法。

4K30

初学者使用Pandas特征工程

合并连续变量也有助于消除异常值影响。 pandas具有个对变量进行分箱功能,即cut() 和qcut() 。...用于文本提取apply() pandasapply() 函数允许pandas系列上传递函数并将其传递到变量每个点。 它接受一个函数作为参数,然后将其应用于数据框行或。...我们可以将任何函数传递给apply函数参数,但是我主要使用lambda函数, 这有助于我单个语句中编写循环和条件。 使用apply和lambda函数,我们可以从中存在唯一文本中提取重复凭证。...我们大卖场销售数据中,我们有一个Item_Identifier,它是每个产品唯一产品ID。此变量个字母具有三种不同类型,即DR,FD和NC,分别代表饮料,食品和非消耗品。...这就是我们如何创建多个方式。执行这种类型特征工程时要小心,因为使用目标变量创建新特征时,模型可能会出现偏差。

4.8K31

数据处理入门干货:MongoDB和pandas极简教程

包含由字段和值对组成数据结构文档MongoDB中称为记录(record)。这些记录类似于JSON对象。字段值可以包括其他文档、数组和文档数组。...,如以下个示例所示: Coll11 = db11.dataset coll = db11['dataset'] 4....MaxName=df['Names'][df['Births']==df['Births'].max()].values Pandas中还有许多其他方法,例如 sort、groupby 和 orderby...不同X数据框中,查找root分组平均值。 for col in X.columns: if col !...延伸阅读《Python高级数据分析》 点击上图了解及购买 转载请联系微信:DoctorData 推荐:本书介绍高级数据分析概念广泛基础,以及最近数据库革命,如Neo4j、弹性搜索和MongoDB。

2.6K30

初学者10种Python技巧

#8 —将lambda应用于DataFrame pandas DataFrame是一种可以保存表格数据结构,例如Excel for Python。...函数sunny_shelf接受个参数作为其输入-用于检查“full sun”和用于检查“ bach”。函数输出这个条件是否都成立。...第4行,我们 将此函数.apply()应用于DataFrame并指定应将哪些列作为参数传递。 axis=1 告诉pandas它应该跨评估函数(与之相对 axis=0,后者跨行评估)。...#6 —分解一长行代码 顺便说一句,您可以多行中将括号,方括号或大括号内任何语句分开,以免单行运行时间过长。...根据 PEP8,Python样式指南: 包装长行首选方法是括号,方括号和花括号内使用Python隐含行连续性。

2.8K20

【小白必看】Python爬虫数据处理与可视化

datas 使用pandas.DataFrame()方法将二维列表转换为DataFrame对象df,每分别命名为'类型'、'书名'、'作者'、'字数'、'推荐' 将'推荐'数据类型转换为整型 数据统计与分组...df.describe() df.groupby('类型').count() 使用describe()方法对数据进行统计描述,包括计数、均值、标准差、最小值、最大值等 使用groupby()方法按'...', '推荐']) # 使用pandas库将二维列表datas转换为DataFrame对象df,并为每一命名 df['推荐'] = df['推荐'].astype('int') # 将推荐数据类型转换为整型...df.describe() # 使用describe()方法获取数据统计描述信息 df.groupby('类型').count() # 使用groupby()方法按照类型进行分组,然后使用count...对象df,并为每一命名 df.to_excel('data.xlsx', index=False) # 将DataFrame保存为Excel文件,文件名为data.xlsx,不包含索引 结束

9010

玩转Pandas,让数据处理更easy系列6

,让数据处理更easy系列5 实践告诉我们Pandas主要类DataFrame是一个二维结合数组和字典结构,因此对行、而言,通过标签这个字典key,获取对应行、,而不同于Python,...df_data.groupby('A') 默认是按照axis=0分组(行),如果按照,修改轴,即 df_data.groupby('A' , axis=1) 也可以按照多个分组,比如: df_data.groupby...([ 'A', 'B'] ) 05 选择分组 分组后返回对象类型为:DataFrameGroupBy,我们看下按照标签'A'分组后,因为'A'可能取值为:foo, bar ,所以分为了组,通过DataFrameGroupBy...如果根据个字段组合进行分组,如下所示,为对应分组总和, abgroup = df.groupby(['A','B']) abgroup.aggregate(np.sum) ?...还可以对不同列调用不同函数,详细过程参考官方文档: http://pandas.pydata.org/pandas-docs/stable/groupby.html 还可以进行一些转化和过滤操作,

2.7K20

Pandas中实现ExcelSUMIF和COUNTIF函数功能

可以使用上面的方法循环五个行政区名称,然后逐个计算,但这有点低效。 使用groupby()方法 pandas库有一个groupby()方法,允许对组进行简单操作(例如求和)。...示例中: 组: Borough 数据:num_calls 操作:sum() df.groupby('Borough')['num_calls'].sum() 图5:pandas groupby...PandasSUMIFS SUMIFS是另一个Excel中经常使用函数,允许执行求和计算时使用多个条件。 这一次,将通过组合Borough和Location来精确定位搜索。...本质上是使用按位与运算符&将个条件结合起来。注意,这个条件周围括号是必不可少。...图6 与只传递1个条件Borough==‘Manhattan’SUMIF示例类似,SUMIFS中,传递多个条件(根据需要)。在这个示例中,只需要个。

8.9K30
领券