前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >加速Python数据分析的10个简单技巧(上)

加速Python数据分析的10个简单技巧(上)

作者头像
AiTechYun
发布2019-07-05 14:13:21
1.6K0
发布2019-07-05 14:13:21
举报
文章被收录于专栏:ATYUN订阅号ATYUN订阅号

编译 | sunlei

发布 | ATYUN订阅号

总有一些小贴士和技巧在编程领域是非常有用的。有时,一个小技巧可以节省时间甚至可以挽救生命。一个小的快捷方式或附加组件有时会被证明是天赐之物,并能真正提高生产力。因此,我总结了一些我最喜欢的一些贴士和技巧,我将它们以本文的形式一起使用和编译。有些可能是大家相当熟悉的,有些可能是比较新的,但我确信它们将在下一次您处理数据分析项目时派上用场。

1. 分析pandas dataframe

分析是一个帮助我们理解数据的过程,而pandas分析是一个python包,它正好做到了这一点。这是一种对Pandas Dataframe进行探索性数据分析的简便、快速的方法。panda df.describe()和df.info()函数通常用作EDA过程的第一步。但是,它只提供了一个非常基本的数据概览,对于大型数据集没有多大帮助。另一方面,panda分析函数用一行代码显示了很多信息,这也可以在交互式HTML报告中显示。

对于给定的数据集,pandas分析包计算以下统计数据:

统计计算机-熊猫剖析包

安装

代码语言:javascript
复制
1pip install pandas-profiling
2or
3conda install -c anaconda pandas-profiling

用法

让我们使用古老的Titanic数据集来演示通用的Python分析器的功能。

代码语言:javascript
复制
1#importing the necessary packages
2import pandas as pd
3import pandas_profiling
4df = pd.read_csv('titanic/train.csv')
5pandas_profiling.ProfileReport(df)

这一行代码就是在Jupyter笔记本中显示数据分析报告所需的全部代码。报告非常详细,包括必要图表。

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

代码语言:javascript
复制
1profile = pandas_profiling.ProfileReport(df)
2profile.to_file(outputfile="Titanic data profiling.html")

2.将互动带到pandas plots

pandas有一个内置的.plot()函数作为DataFrame类的一部分。然而,使用该函数呈现的可视化效果并不具有交互性,这使得它的吸引力降低。相反,也不能排除使用pandas. datafram .plot()函数绘制图表的方便性。如果我们不需要对代码进行重大修改,就可以像用pandas绘制图表那样巧妙地绘制交互式图表,那会怎么样呢?实际上,你可以在Cufflinks库的帮助下做到这一点。

Cufflinks库将plotly的力量与熊猫的灵活性结合起来,便于绘制。现在让我们来看看如何安装这个库并让它在pandas中工作。

安装

代码语言:javascript
复制
1pip install plotly # Plotly is a pre-requisite before installing cufflinks
2pip install cufflinks

用法

代码语言:javascript
复制
1#importing Pandas 
2import pandas as pd
3#importing plotly and cufflinks in offline mode
4import cufflinks as cf
5import plotly.offline
6cf.go_offline()
7cf.set_config_file(offline=False, world_readable=True)

是时候看看泰坦尼克数据集的神奇之处了。

代码语言:javascript
复制
1df.iplot()

+6df.iplot() vs df.plot()

下边的可视化显示的是静态图表,而上边的图表是交互式的,并且更加详细,所有这些都没有对语法进行任何重大更改。

3.一点点魔法

Magic命令是jupyter笔记本中的一组方便的函数,旨在解决标准数据分析中的一些常见问题。在%lsmagic的帮助下,您可以看到所有可用的magic。

所有可用magic函数的列表

Magic命令有两种类型:line magics和cell magics,前者以单个%字符作为前缀,并在一行输入上进行操作;后者与double %%前缀关联,并在多行输入上进行操作。如果将Magic函数设置为1,则无需键入初始%即可调用。

让我们来看看在常见的数据分析任务中可能有用的一些方法:

  • % pastebin

%pastebin将代码上载到pastebin并返回url。Pastebin是一个在线内容托管服务,我们可以在其中存储纯文本,如源代码片段,然后url可以与他人共享。事实上,Github gist也类似于pastebin,尽管有版本控制。

考虑一个包含以下内容的python script file.py:

代码语言:javascript
复制
1#file.py
2def foo(x):
3    return x

使用Jupyter笔记本中的%Pastebin生成Pastebin URL。

  • %matplotlib notebook

%matplotlib inline函数用于呈现jupyter笔记本中的静态matplotlib绘图。尝试用笔记本替换内嵌部件,以轻松实现可缩放和可调整大小的绘图。确保在导入Matplotlib库之前调用了函数。

%matplotlib inline vs %matplotlib notebook

  • %run

%run函数在一个笔记本中运行一个python脚本。

代码语言:javascript
复制
1%run file.py
  • %%writefile

%%writefile将单元格的内容写入文件。在这里,代码将被写入一个名为foo.py的文件,并保存在当前目录中。

  • %%latex

%%latex 函数将单元格内容呈现为乳胶。它可用于在单元中编写数学公式和方程。

4.发现和消除错误

交互式调试器也是一个神奇的函数,但是我已经给了它提供一个自己的类别。如果在运行代码单元格时出现异常,请在新行中键入%debug并运行它。这将打开一个交互式调试环境,将您带到异常发生的位置。您还可以检查程序中分配的变量的值,并在这里执行操作。要退出调试器,请按q。

5.印刷也可以很漂亮

如果您想为数据结构生成美观的表示形式,pprint是首选模块。它在打印字典或JSON数据时特别有用。让我们看一个同时使用print和pprint显示输出的示例。

这又是一篇很长的文章,这次先透露5个技巧,其余的5个我明天继续更新。

End

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-06-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 ATYUN订阅号 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 分析pandas dataframe
    • 安装
      • 用法
      • 2.将互动带到pandas plots
        • 安装
          • 用法
            • 是时候看看泰坦尼克数据集的神奇之处了。
              • +6df.iplot() vs df.plot()
              • 3.一点点魔法
              • 4.发现和消除错误
              • 5.印刷也可以很漂亮
              领券
              问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档