hello,大家好我是东哥!

用Python处理数据大家都不陌生了,属常规操作,但常规之下还是也有些暗藏技巧的,本篇东哥分享6个好玩高效的操作,帮助大家提高效率。

一、Pandas Profiling

Pandas Profiling提供数据的一个整体报告,是一个帮助我们理解数据的过程。它可以简单快速地对Pandas的数据框数据进行探索性数据分析。

其实,Pandas中df.describe()和df.info()函数也可以实现数据探索过程第一步。但它们只提供了对数据非常基本的概述。而Pandas中的Profiling功能简单通过一行代码就能显示大量信息,同时还能生成交互式HTML报告。

对于给定的数据集,Pandas中的profiling包计算了以下统计信息:

由Pandas Profiling包计算出的统计信息包括直方图、众数、相关系数、分位数、描述统计量、其他信息包括类型、单一变量值、缺失值等。

安装

用pip和conda即可,使用方法很简单,如下:

pip install pandas-profiling

conda install -c anaconda pandas-profiling

用法

以titanic数据集来演示profiling的功能。

import pandas as pd

import pandas_profiling

df = pd.read_csv('titanic/train.csv')

pandas_profiling.ProfileReport(df)

除了导入库之外只需要一行代码,就能显示数据报告的详细信息,包括必要的图表。

还可以使用以下代码将报告导出到交互式HTML文件中。

profile = pandas_profiling.ProfileReport(df)

profile.to_file(outputfile="Titanic data profiling.html")

二、pretty print

pprint是Python中的内置模块。它能够以格式清晰,可读性强漂亮格式打印任意数据结构。一个例子对比下print和pprint。

# 定义个字典,测试用

my_dict = {'Student_ID': 34,'Student_name' : 'Tom', 'Student_class' : 5,

'Student_marks' : {'maths' : 92,

'science' : 95,

'social_science' : 65,

'English' : 88}

}

print

# 正常的print

print(my_dict)

# 输出结果如下:

{'Student_ID': 34, 'Student_name': 'Tom', 'Student_class': 5, 'Student_marks': {'maths': 92, 'science': 95, 'social_science': 65, 'English': 88}}

pprint

# 使用pprint输出

import pprint

pprint.pprint(my_dict)

# 输出结果如下:

{'Student_ID': 34,

'Student_class': 5,

'Student_marks': {'English': 88,

'maths': 92,

'science': 95,

'social_science': 65},

'Student_name': 'Tom'}

可以清楚看到pprint的优势之处,数据结构一目了然啊。

三、Python Debugger

交互式调试器也是一个神奇的函数,如果在运行代码单元格时出现报错,可以在新行中键入%debug运行它。这将打开一个交互式调试环境,自动转到报错发生的位置,并且还可以检查程序中分配的变量值并执行操作。要退出调试器,按q。比如下面这个例子。

x = [1,2,3]

y = 2

z = 5

result = y+z

print(result)

result2 = x+y

print(result2)

大家应该能看出x+y肯定会报错,因为二者不是一个类型,无法进行运算操作。然后我们敲入%debug。

%debug

这时会出现对话框让我们互交式输入命令,比如我们可以像下面这样做。

四、Cufflinks

这个东哥在之前也介绍过,对于数据探索的可视化分析超级好用,低代码量便可生成漂亮的可视化图形。下面举一个例子,详细的可参见这篇Python一行代码搞定炫酷可视化,你需要了解一下Cufflinks。

cufflinks在plotly的基础上做了一进一步的包装,方法统一,参数配置简单。其次它还可以结合pandas的dataframe随意灵活地画图。可以把它形容为pandas like visualization。

比如下面的lins线图。

import pandas as pd

import cufflinks as cf

import numpy as np

cf.set_config_file(offline=True)

cf.datagen.lines(1,500).ta_plot(study='sma',periods=[13,21,55])

再比如box箱型图。

cf.datagen.box(20).iplot(kind='box',legend=False)

五、Pyforest

这是一个能让你偷懒的import神器,可以提前在配置文件里写好要导入的三方库,这样每次编辑脚本的时候就省去了开头的一大堆import 各种库,对于有常用和固定使用库的朋友来说无疑也是提高效率的工具之一。

pyforest支持大部分流行的数据科学库,比如pandas,numpy,matplotlib,seaborn,sklearn,tensorflow等等,以及常用的辅助库如os,sys,re,pickle等。此用法对于自己频繁调试很方便,但对于那些频繁跨环境比如和其它人共享脚本调试的时候就不是很好用了,因为别人不一定使用它。

六、Jupyter notebook的笔记高亮

此方法仅适用于Jupyter notebook中,当我们想高亮笔记,让笔记变得美观的时候,这个方法非常的香。

笔记的高亮的颜色根据不同情况分为几种,前端的同学一看就明白,区别就是每种颜色代码的class类型不一样,其它只要在div标签中写内容就好。下面看下用法。

蓝色代表info

Tip: Use blue boxes (alert-info) for tips and notes.

If it’s a note, you don’t have to include the word “Note”.

黄色代表warning

Example: Yellow Boxes are generally used to include additional examples or mathematical formulas.

绿色代表success

Use green box only when necessary like to display links to related content.

红色代表danger

It is good to avoid red boxes but can be used to alert users to not delete some important part of code etc.

这里有个小提示东哥提示下,如果你直接复制到jupyter notebook中可能会报错,因为默认是代码的格式,所以你需要选中单元格按Esc变成可切换模式,然后再按Y切换成文本模式。这时候再运行shift+ok就ok了。看下面这个例子。

以上就是本次分享内容,欢迎各位朋友点赞留言收藏。

欢迎关注我的个人公众号:Python数据科学

python快速入门神器 知乎_太香了!墙裂推荐6个Python数据分析神器!!相关推荐

  1. python 数据分析教程推荐_太香了!墙裂推荐6个Python数据分析神器!!

    作者:东哥起飞,数据爱好者 Python数据科学 hello,大家好我是东哥! 用Python处理数据大家都不陌生了,属常规操作,但常规之下还是也有些暗藏技巧的,本篇东哥分享6个好玩高效的操作,帮助大 ...

  2. 墙裂推荐 Anaconda | 安利 Python IDE

    一.为什么安装 Anaconda? 如果你苦于给 python 安装各种包,安装过程中还各种出错.那么我墙裂推荐你!Anaconda 可以帮助你管理这些包,包括安装,卸载,更新. Anaconda 附 ...

  3. 太香了!墙裂推荐 6 个Python数据分析神器!!

    作者:东哥起飞,数据爱好者 Python数据科学 用Python处理数据大家都不陌生了,属常规操作,但常规之下还是也有些暗藏技巧的,本篇东哥分享6个好玩高效的操作,帮助大家提高效率. 一.Pandas ...

  4. python数量推荐_太香了,墙裂推荐3个Python数据分析EDA神器!

    作者:东哥起飞 EDA是数据分析必须的过程,用来查看变量统计特征,可以此为基础尝试做特征工程.东哥这次分享3个EDA神器,其实之前每一个都分享过,这次把这三个工具包汇总到一起来介绍. 1. Panda ...

  5. python数据分析神器_太香了!墙裂推荐6个Python数据分析神器!!

    hello,大家好我是东哥! 用Python处理数据大家都不陌生了,属常规操作,但常规之下还是也有些暗藏技巧的,本篇东哥分享6个好玩高效的操作,帮助大家提高效率. 一.Pandas Profiling ...

  6. python 爱心文字墙_博客园墙裂推荐!从未见过如些清新脱俗的完整Python+requests接口自动化测试框架搭建文章!...

    前言 很多小伙伴不知道什么是框架?框架有哪些东西? 一步步从需求分析到报告生成告诉你如何搭自动化建框架. 学完unittest后这里基本上可以搭建一个简易的项目框架了,我们可以用一条run_main. ...

  7. 程序员需知的 58 个网站,墙裂推荐!

    点击"开发者技术前线",选择"星标????" 让一部分开发者看到未来 文章来源:cnblogs.com/three-fighter/p/13641835.htm ...

  8. python软件怎么使用-Python快速入门—如何选择使用包管理工具?

    原标题:Python快速入门-如何选择使用包管理工具? 源 | cnblogs文 | 包子 在Python环境中已经有很多成熟的包,可以通过安装这些包来扩展我们的程序. 例如,很多时候Python开发 ...

  9. python快速编程入门教程-半小时带你快速入门Python编程,Python快速入门教程

    1,Introduction to Python (Python入门) 2,Python是什么? Python 官方网站的描述 Python is a programming language tha ...

最新文章

  1. 实战:使用 Python 用不到 10 行代码计算汽车数量
  2. 隐藏自己电脑的IP地址
  3. [vue] watch的属性用箭头函数定义结果会怎么样?
  4. java开发C语言编译器
  5. 【java】java 使用 Unsafe CAS 实现数据递增 打印重复问题
  6. python-packaging 命令行脚本
  7. flex 弹出的titleWindow 隐藏标题栏
  8. 【转载】opencl中设备内存
  9. 删除本地oracle数据库,如何在WINDOWS 2000将ORALCE完全卸载-数据库专栏,ORACLE
  10. linux 双mipii摄像头,Toybrick-开源社区-TB-RK3399ProD-imx258摄像头 mipi 错误
  11. 当“双态IT”已成共识 如何打造以数据驱动的运维平台?
  12. 基于MATLAB的列车防护曲线组合步长算法分析与仿真验证
  13. ERROR TransactionInterceptor - Application exception overridden by rollback exception
  14. win7序列号(可激活所有版本)
  15. 关于叶子的思维导图_关于叶子的思维导图制作方法
  16. [luoguT30208]太极剑
  17. Ubuntu拼音输入不正常解决
  18. 当前佛教界的乱相之一就是以凡滥圣、惑乱人心
  19. “线上围观”创先河 百合佳缘集团移动端上线多屏直播
  20. 想知道PPT如何转PDF?这几个软件可以实现

热门文章

  1. 【pytest】内置 fixtures 之 tmpdir:创建临时文件
  2. Suker的进球庆祝动作
  3. 已解决mybatis报错:Invalid bound statement (not found)
  4. 谷粒学苑 —— 9、课程管理:课程列表
  5. 网站dns服务器不能用,Win7网络诊断“DNS服务器可能不可用”怎么解决?
  6. App Inventor 2连接模拟器一直失败的问题解决
  7. 如何解决App inventor和AI伴侣无法连接的问题
  8. 用AI变革新药研发,终极目标是延缓衰老,这家创业公司迎来“里程碑”
  9. 关于节日文化的HTML网页设计-----二十四节气
  10. 20世纪十大哲学问题