5 个pandas神级操作,最后一个长见识了!

【机器学习|Python】sklearn中的数据预处理方法 本篇文章主要讲解Python的sklearn库中常用的数据预处理方法,主要介绍工具中的内容,即该库中的相关方法包含的常用接口和基本使用,并不适合手把手入门学习,此外将涉及更少的原理和使用情况说明。 阅读详情

来源:Python数据科学

作者:东哥起飞

虽然双节,但东哥还是不忘更新。最近发现了几个pandas的骚操作,小巧实用,个个经典,下面快速介绍下。

1、df.groupby().__iter__()分析数据样本

在Jupyter Notebook中通常很难像使用Excel一样难逐行或逐个组地浏览数据集。一个非常有用的技巧是使用 generator 生成器和Ctrl + Enter组合,而不是我们常规的Shift + Enter运行整个单元格。这样做就可以很方便地迭代查看同一单元格中的不同样本了。

首先在单元格中使用.groupby()(或.iterrows())和.__iter __()创建一个生成器:

generator = df.groupby(['identifier']).__iter__()

然后,根据自己需要运行的次数,使用键盘快捷键Ctrl + Enter逐个查看数据。

group_id, grouped_data = generator.__next__()
print(group_id) 
grouped_data

下面是taitanic数据集的示例。正常分析的时候,所有乘客都混在一起,我们是不能单独地隔离每组乘客的,使用这种方法就可以非常简单地分析一组乘客。

2、特征重要性/参数的可视化

如果我们做机器学习,那么模型的参数或者特征的重要性是必不可少的一环。通常我们会像下面这样查看参数,但小数点太多了,真的容易花眼,这样非常不便于分析和比较。

所以,我们对上面代码稍加改造,用链式操作首先round保留小数点后两位数字,然后sort_values进行从大到小的排序,最后用style.bar进行可视化,颜色可随意设置,这样不但可以区分大小,也可区分正负。

pd.DataFrame({
    'variable': variables,
    'coefficient': model.coef_[0]
}) \
    .round(decimals=2) \
    .sort_values('coefficient', ascending=False) \
    .style.bar(color=['grey', 'lightblue'], align='zero')

上面这段代码是可以复用的,之后每次展示参数或者特征重要性的时候,直接替换字段名就ok了。下面是可视化效果。

3、sklearn_pandas

时间长了我们会发现sklearn和pandas搭配有时候代码并不是十分整洁,中间的操作环节比较多。推荐一个连接sklearn和pandas的库包,它叫sklearn_pandas。它将sklearn的ColumnTransformer替换为pandas的DataFrameMapper。用起来无缝连接,和直接使用sklearn的ColumnTransformer毫无区别。


imputer_Pclass = SimpleImputer(strategy='most_frequent', add_indicator=True)
imputer_Age = SimpleImputer(strategy='median', add_indicator=True)
imputer_SibSp = SimpleImputer(strategy='constant', fill_value=0, add_indicator=True)
imputer_Parch = SimpleImputer(strategy='constant', fill_value=0, add_indicator=True)
imputer_Fare = SimpleImputer(strategy='median', add_indicator=True)
imputer_Embarked = SimpleImputer(strategy='most_frequent')

scaler_Age = MinMaxScaler()
scaler_Fare = StandardScaler()

onehotencoder_Sex = OneHotEncoder(drop=['male'], handle_unknown='error')
onehotencoder_Embarked = OneHotEncoder(handle_unknown='error')

leaveoneout_encoder = LeaveOneOutEncoder(sigma=.1, random_state=2020)

mapper = DataFrameMapper([
    (['Age'], [imputer_Age, scaler_Age], {'alias':'Age_scaled'}),
    (['Pclass'], [imputer_Pclass]),
    (['SibSp'], [imputer_SibSp]),
    (['Parch'], [imputer_Parch]),
    (['Fare'], [imputer_Fare, scaler_Fare], {'alias': 'Fare_scaled'}),
    (['Sex'], [onehotencoder_Sex], {'alias': 'is_female'}),
    (['Embarked'], [imputer_Embarked, onehotencoder_Embarked]), 
    (['Embarked_Pclass_Sex'], [leaveoneout_encoder])
], df_out=True) 

mapper.fit(X=train, y=train['Survived']) 

下面是fit之后的结果。

4、.to_clipboard()

经过数据处理和建模后,通常我们最后会以csv或者excel格式将数据输出,但有的时候我们需要汇总数据,这就需要打开生成的excel文件,然后再复制粘贴。

但其实也有更灵活的方法,不通过使用.to_excel方法,也能导出来。pandas还有一个功能是.to_clipboard(index = False),它可以将数据复制到剪贴板。

然后,我就可以在正在操作的Excel中直接Ctrl + V将数据粘贴到当前电子表格中,也是另外一种选择。

5、tqdm

处理大数据集时,数据处理会花费很多时间。当然,东哥也分享了很多加速运行pandas的方法。

安利一个Python大数据分析神器!

卧槽!一个比 pandas 快百倍的大数据分析神器!

12个Pandas & Numpy函数:数据分析提速50%不是问题!

嫌pandas慢又不想改代码怎么办?来试试Modin

但即使加速了还是要等,Jupyter Notebook运行时有个缺点,就是不知道运行的状态,需要多久。像我们在电脑上复制粘贴的时候通常会显示需要多久和当前的速度,这样我们提前安排做其它事情还是继续等待。

Python中有个库是tqdm,它可以用来跟踪代码是否真正在运行以及需要花费多长时间,使用方法很简单。

from tqdm import notebook
notebook.tqdm().pandas()

import之后,pandas的dataframe就有了新的方法。

  • .progress_apply, .progress_applymap

  • .progress_map

这些方法与apply、applymap和map的使用相同,不同之处是它们将显示进度条。

文末福利
各位猿们,还在为记不住API发愁吗,哈哈哈,最近发现了国外大师整理了一份Python代码速查表和Pycharm快捷键sheet,火爆国外,这里分享给大家。


这个是一份Python代码速查表



下面的宝藏图片是2张(windows && Mac)高清的PyCharm快捷键一览图



怎样获取呢?可以添加我们的AI派团队的程序媛姐姐
一定要备注【高清图】哦
????????????????????

➕我们的程序媛小姐姐微信要记得备注【高清图】哦
来都来了,喜欢的话就请分享、点赞、在看三连再走吧~~~


pandas后台导出excel_5 个pandas神级操作,最后一个长见识了! 点击关注上方“SQL数据库开发”,设为“置顶或星标”,第一时间送达干货来源:Python数据科学作者:东哥起飞最近发现了几个pandas的骚操作,小巧实用,个个经典,下面快速介绍下。1、df.groupby().__iter__()分析数据样本在Jupyter Notebook中通常很难像使用Excel一样难逐行或逐个组地浏览数据集。一个非常有用的技巧是使用 generator 生成器和... 阅读详情

相关推荐

5.Pandas的实例操作

本文详细介绍了Python中pandas库的核心操作,主要包括:1. DataFrame基础操作:数据导入、行列查询/删除/添加、索引修改;2. 数据拼接:concat按行/列合并、merge实现各种表连接;3. 数据处理技巧:分组统计、透视表、字符串处理、正则表达式;4. 时间序列处理:日期转换、切片、计算、格式化;5. 数据清洗:缺失值处理、类型转换、规范化方法;6. 高级索引操作:多重索引查询、层级交换、行列转换。文章通过具体代码示例演示了pandas在数据分析和处理中的强大功能,涵盖数据全流程操作。

学习与分享 1795

一份火爆国外的PyCharm快捷键和Python代码速查表

各位猿们,还在为记不住API发愁吗,哈哈哈,最近发现了国外大师整理了一份Python代码速查表和Pycharm快捷键sheet,火爆国外,这里分享给大家。这个是一份Python代码速查表...

zenRRan的博客 262

Pandas的常用操作大全

1. Series的创建 操作 代码实现 返回值 说明 通过list构建Series (1)pd.Series(range(10))(2)pd.Series(range(3), index = [‘a’, ‘b’, ‘c’]) 新Series (1)自动生成索引(2)自定义索引 通过dict构建Series pd.Series(dict) 新Series dict的key为索引...

tigerlib的博客 3761

Pandas_设置单元格条件格式2——迷你条形图、用颜色深浅表示值大小

转载于:https://www.cnblogs.com/wodexk/p/10801351.html

weixin_30462049的博客 1359

Python学习笔记:生成器(Generator)

Python学习笔记:生成器(Generator) 拥有迭代序列的一致方式,比如列表里的对象或文件里的行,是Python的一项重要特性。这是通过迭代器协议的方式来完成的,一种生成可迭代对象的通用方式。例如,迭代一个字典会生成字典键构成的集合。 当我们书写for key in mydict语句时,Python解释器试图基于mydict创建一个迭代器: 当用于for循环时,一个迭代器是一...

howard2005的专栏 788

pandas之groupby+带进度条的apply

from tqdm import tqdm tqdm.pandas(desc='pandas bar') outputs=case2.groupby(case2['ID']).progress_apply(lambda x:select_station(x))

fff2zrx的博客 1769

pandas mean保留两位小数_5 个pandas神级操作,最后一个长见识了!

来源:Python数据科学作者:东哥起飞虽然双节,但东哥还是不忘更新。最近发现了几个pandas的骚操作,小巧实用,个个经典,下面快速介绍下。1、df.groupby().__iter__()分析数据样本在Jupyter Notebook中通常很难像使用Excel一样难逐行或逐个组地浏览数据集。一个非常有用的技巧是使用 generator 生成器和Ctrl + Enter组合,而不是我们...

weixin_39614704的博客 2957

CST仿真提速秘籍:用好Local Mesh,别再让简单结构拖慢你的仿真速度

本文深入探讨了CST仿真中Local Mesh技术的应用,通过区域加密与全局排除策略,显著提升电磁仿真效率。针对5G天线阵列、微波滤波器等多尺度结构模型,提供了网格划分的黄金法则和实战技巧,帮助工程师优化仿真速度与精度,特别适用于电磁仿真和网格设置场景。

weixin_27134495的博客 406

Pandas 筛选数据的 8 个神操作

日常用Python做数据分析最常用到的就是查询筛选了,按各种条件、各种维度以及组合挑出我们想要的数据,以方便我们分析挖掘。 今天我给大家总结了日常查询和筛选常用的种骚操作,供各位学习参考。本文采用sklearn的boston数据举例介绍。喜欢本文记得收藏、关注、点赞。 【注】完整代码、数据资料、文末提供技术交流群 from sklearn import datasets import pandas as pd boston = datasets.load_boston() df = pd.DataFram

Python数据挖掘 1万+

电流采样(分流器与霍尔传感器)

霍尔效应霍尔效应是磁电效应的一种,这一现象是霍尔(A.H.Hall,1855—1938)于1879年在研究金属的导电机构时发现的。霍尔效应是研究半导体材料性能的基本方法。通过霍尔效应实验测定的霍尔系数,能够判断半导体材料的导电类型、载流子浓度及载流子迁移率等重要参数。简单原理如图1所示,半导体薄片两端通以控制电流I,垂直方向施加磁感应强度为B的匀强磁场,d为半导体材料的厚度,k为霍尔常数,它与半导体材质有关,则在垂直于电流和磁场的方向上,将产生电势差为UH的霍尔电压,它们之间的关系为。霍尔元件。

weixin_48867130的博客 1万+

【汽车ECU标定技术解析】DCM文件与A2L、HEX的协同工作机制

本文深入解析了汽车ECU标定中DCM、A2L与HEX三大核心文件的协同工作机制。A2L文件作为定义标定变量地址与规则的“图纸”,DCM文件承载工程师调试后的具体标定数据,最终通过A2L的地址映射,将DCM数据固化生成可刷入ECU的HEX文件,形成完整的标定数据流转闭环。

weixin_29214559的博客 437

pandas 筛选数据的 8 个神操作

大家好,我是东哥。本篇是pandas神操作系列的第 20 篇:pandas筛选数据的 8 个神操作。系列内容,请看????「pandas100个神操作」话题。日常用Python做数据分析最...

华章IT官方博客 800

网络虚拟化介绍(OVS、DVS)

网络虚拟化概念网络虚拟化就是把网络层的一些功能从硬件中剥离出来,建立新的网络虚拟层;该虚拟层可以接管网络服务和配置,实现网络服务与物理层的解耦,打破物理资源限制;通过网络虚拟层能够在一个物理网络上模拟出多个逻辑网络,并且多用户在逻辑网络上相互隔离,保证网络安全网络虚拟化的特点隔离性:不同租户的流量相互之间不能互访;但是IP/MAC地址都可以独立规划可移动性:虚拟机可以跨二层/三层迁移,甚至可以跨广域网迁移(迁移前后虚拟机Vlan和IP地址都不会发生变化)可扩展性:逻辑网络的规模和数量可扩展。

m0_49864110的博客 1万+

每日一书丨pandas 筛选数据的 8 个神操作

这是一本全面覆盖了Pandas使用者的普遍需求和痛点的著作,基于实用、易学的原则,从功能、使用、原理等多个维度对Pandas做了全方位的详细讲解,既是初学者系统学习Pandas难得的入门书,又是有经验的Python工程师案头必不可少的查询手册。

Piotr_ce的博客 3803

python opencv的车牌识别分割详细教程 毕业设计

python opencv的车牌识别分割详细教程 毕业设计

机器学习深度学习业余选手 1327

8,9,10,11,12,13代CPU特制win7 64位系统

对于7代以上的CPU装win7,在UEFI的模式下,如果不提前注入显卡驱动,就会一直卡在LOGO界面。对于此情况,我们推出一个内置了显卡和USB驱动的特制版win7系统。由于单文件已经大于了4G,所以推荐使用rufus来写入镜像安装。如还有问题,请记录下电脑配置,联系QQ11717907。制作完成以后,就可以通过U盘启动安装了。

海康威视技术支持 7252

【Pandas必看】DataFrame 数据神操作!轻松实现数据分组、求和和合并

在本篇文章中,我们将学习如何使用 DataFrame 对数据进行分组、合并和统计操作。这是一个非常实用的功能,特别适合处理大数据集。

qq_51210361的博客 2001

主题033:燃烧反应工程

燃烧反应工程(Combustion Reaction Engineering)是研究燃料与氧化剂发生剧烈氧化反应的科学,涉及化学反应动力学、流体力学、传热传质等多个学科。燃烧是人类利用能源的主要方式,广泛应用于发电、交通运输、工业加热等领域。燃烧反应通常通过自由基链式反应进行。链引发:RH+O2⟶R⋅+HO2⋅ RH + O_2 \longrightarrow R^\cdot + HO_2^\cdot RH+O2​⟶R⋅+HO2⋅​链传递:R⋅+O2⟶RO2⋅ R^\cdot + O_2 \longrigh

kkchenjj的博客 231

pandas库基础操作

https://i-blog.csdnimg.cn/direct/cb9976308aa64b50a09393987aadbdb6.png

2302_81096429的博客 1万+

【NLP】第十五章:隐马尔可夫——前向算法、后向算法、维特比算法、Baum-Welch算法

就是好比我现在知道了观测序列Observations、掩藏序列States,我试着去学一个最优的(π, A, B),让在这个(π, A, B)下,观测序列Observations、掩藏序列States的概率最大。(2)矩阵B就更好理解了,矩阵B的第一行表示我已经抽取的是盒子1,那我抽取白球的概率就是0.4,抽取黑球的概率就是0.6了,因为第一个盒子只有4白6黑嘛。三是,由于每次抽取的小球的颜色的概率不仅取决于,小球所在的盒子中的黑白球的比例,还取决于你是从哪个盒子中抽的,所以其实观测序列还对应着一个。

因为热爱所以坚持 1162

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Pandas行级处理实战:安全、可监控、可审计的逐行操作框架

在数据科学实践中,'Pandas Iterate Over Rows'并非反模式,而是应对非向量化业务逻辑(如API调用、混合格式解析、状态依赖计算)的必要手段。其核心原理在于理解Pandas列式存储本质与五种迭代器的内存/错误/性能差异;技术价值体现在将不可控的for循环升维为具备熔断、日志、超时、质量监控和错误持久化的治理框架;典型应用场景包括电商地址清洗、金融防重签名生成、教育平台完成度计算等需强业务语义的行级任务。本文聚焦真实生产环境下的'Handle Row-by-Row Operations'方

weixin_34294649的博客 343

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

推荐收藏!3.5万字图解 Pandas!

大家好,在 Python 各个工具包中,最频繁使用的应该就是 Pandas 了。今天我以图解的方式给大家介绍 Pandas 中各种常用的操作,内容有点长,

2401_86168842的博客 1157

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Pandas知识点-详解表级操作管道函数pipe

pandas系列。

weixin_43790276的博客 3241

50个pandas高频操作汇总_50个pandas 高频使用

df.info()

2401_89790831的博客 2264

50 个 Pandas 高级操作,建议收藏!

↓推荐关注↓转自:https://zhuanlan.zhihu.com/p/568250201在数据分析和数据建模的过程中需要对数据进行清洗和整理等工作,有时需要对数据增删字段。下面为大家介绍Pandas对数据的实际业务需求往往需要按照一定的条件甚至复杂的组合条件来查询数据,接下来为大家介绍如何发挥Pandas数据筛选的无限可能,随心所欲地取用数据。

AI大模型资料分享员 1884

Pandas50个高级操作,秀起来!

今天给大家分享一篇Pandas高级操作汇总。在数据分析和数据建模的过程中需要对数据进行清洗和整理等工作,有时需要对数据增删字段。下面为大家介绍Pandas对数据的复杂查询、数据类型转换、数据排序、数据的修改、数据迭代以及函数的使用。实际业务需求往往需要按照一定的条件甚至复杂的组合条件来查询数据,接下来为大家介绍如何发挥Pandas数据筛选的无限可能,随心所欲地取用数据。切片([ ])、.loc[ ]和.iloc[ ]均支持上文所介绍的逻辑表达式。以下是.loc[ ]和.lic[ ]示例:​​​​​​​。

2401_86168842的博客 1395
上一篇: 图解神秘的NC4HW4
下一篇: GNN教程:图神经网络基础知识!
Wang_AI
博客等级 码龄12年 991粉丝 162原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值