深圳易捷网络科技财税咨询网-neatmaster518.com 返回首页

7个Python特殊技巧,助力你的数据分析工作之路

信息来源:深圳市易捷网络科技有限公司
信息发布时间:2024/12/22

本文列举了一些提升或加速日常数据分析工作的技巧,包括:

1.PandasProfiling

2.使用Cufflinks和Plotly绘制Pandas数据

3.IPython魔术命令

4.Jupyter中的格式编排

5.Jupyter快捷键

6.在Jupyter(或IPython)中使一个单元同时有多个输出

7.为JupyterNotebook即时创建幻灯片

1.PandasProfiling

该工具效果明显。下图展示了调用df.profile_report()这一简单方法的结果:

使用该工具只需安装和导入PandasProfiling包。

本文不再详述这一工具,如欲了解更多,请阅读:

https://towardsdatascience.com/exploring-your-data-with-just-1-line-of-python-4b35ce21a82d

2.使用Cufflinks和Plotly绘制Pandas数据

「经验丰富的」数据科学家或数据分析师大多对matplotlib和pandas很熟悉。也就是说,你只需调用.plot()方法,即可快速绘制简单的pd.Dataframe或pd.Series:

有点无聊?

这已经很好了,不过是否可以绘制一个交互式、可缩放、可扩展的全景图呢?是时候让Cufflinks**出马了!(Cufflinks基于Plotly做了进一步的包装。)

在环境中安装Cufflinks,只需在终端中运行!pipinstallcufflinks--upgrade即可。查看下图:

效果好多了!

注意,上图唯一改变的是Cufflinkscf.go_offline()的导入和设置,它将.plot()方法变为.iplot()。

其他方法如.scatter_matrix()也可以提供非常棒的可视化结果:

需要做大量数据可视化工作的朋友,可以阅读Cufflinks和Plotly的文档,发现更多方法。

Cufflinks文档:https://plot.ly/ipython-notebooks/cufflinks/

Plotly文档:https://plot.ly/

3.IPython魔术命令

IPython的「魔术」是IPython基于Python标准语法的一系列提升。魔术命令包括两种方法:行魔术命令(linemagics):以%为前缀,在单个输入行上运行;单元格魔术命令(cellmagics):以%%为前缀,在多个输入行上运行。下面列举了IPython魔术命令提供的一些有用功能:

%lsmagic:找出全部命令

如果你只记得一个魔术命令,那必须得是这一个。执行%lsmagic命令将提供所有可用魔术命令的列表:

%debug:交互式debug

这可能是我最常使用的魔术命令了。

大部分数据科学家都遇到过这种情况:执行的代码块一直break,你绝望地写了20个print()语句,想输出每个变量的内容。然后,当你最终修复问题后,你还得返回并再次删除所有print()语句。

不过以后再也不用这样了。遇到问题后只需执行%debug命令,即可执行想要运行的任意代码部分:

上图中发生了什么?

我们有一个函数,它以列表为输入,并对所有的偶数取平方值。

我们运行函数,但是出了些问题。但是我们并不知道怎么回事!

对该函数使用%debug命令。

让调试器告诉我们x和type(x)的值。

问题显而易见:我们把''6''作为字符串输入到函数中了!

这对于更复杂的函数非常有用。

%store:在notebook之间传递变量

这个命令也很酷。假设你花了一些时间清洗notebook中的数据,现在你想在另一个notebook中测试一些功能,那么你是在同一个notebook中实现该功能,还是保存数据并在另一个notebook中加载数据呢?使用%store命令后,这些操作都不需要!该命令将存储变量,你可以在其他任意notebook中检索该变量:

%store[variable]存储变量。

%store-r[variable]读取/检索存储变量。

%who:列出所有全局变量。

你是否遇到过,为变量赋值后却忘记变量名的情况?或者不小心删掉了负责为变量赋值的单元格?使用%who命令,你可以得到所有全局变量的列表:

%%time:计时魔法命令

使用该命令可以获取所有计时信息。只需对任意可执行代码应用%%time命令,你就可以得到如下输出:

%%writefile:向文件写入单元格内容

在notebook中写复杂函数或类,且想将其保存到专属文件中时,该魔法命令非常有用。只需为函数或类的单元格添加%%writefile前缀和想要保存到的文件名即可:

如上所示,我们可以将创建的函数保存到utils.py文件中,然后就可以随意导入了。在其他notebook中也可以这样,只要与utils.py文件属于同一个目录即可。

4.Jupyter中的格式编排

这个工具很酷!Jupyter考虑到markdown中存在HTML/CSS格式。以下是我最经常使用的功能:

蓝色、时尚:

<divclass="alertalert-blockalert-info">Thisis<b>fancy</b>!</div>

红色、轻微慌张:

<divclass="alertalert-blockalert-danger">Thisis<b>baaaaad</b>!</div>

绿色、平静:

<divclass="alertalert-blockalert-success">Thisis<b>gooood</b>!</div>

下图展示了它们的运行过程:

注册公司需要多少钱深圳财务代理深圳注册公司深圳代理记账深圳代账公司

当你想以Notebook格式呈现一些发现时,这非常有用!

5.Jupyter快捷键

想了解和学习键盘快捷键,你可以使用命令面板:Ctrl+Shift+P,获取notebook所有功能的列表。下面选取了几个最基础的命令:

Esc:进入命令模式。在命令模式内,你可以使用方向键在notebook内进行导航。

在命令模式内:

A和B:在当前单元格上方(Above)或下方(Below)插入新的单元格。

M:当前单元格转入Markdown状态。

Y:当前单元格转入code状态。

D,D:删除当前单元格。

Enter:当前单元格回到编辑模式。

在编辑模式内:

Shift+Tab:为你在当前单元格中键入的对象提供文档字符串(文档),持续使用该快捷键,可循环使用文档模式。

Ctrl+Shift+-:在光标所在处分割当前单元格。

Esc+F:查找并替换代码(不包括输出)。

Esc+O:切换单元格输出。

选择多个单元格:

Shift+Down和Shift+Up:选中下方或上方的单元格。

Shift+M:合并选中单元格。

注意,选中多个单元格后,你可以批量执行删除/复制/剪切/粘贴/运行操作。

6.在Jupyter(或IPython)中使一个单元同时有多个输出

想展示pandasDataframe的.head()和.tail(),但由于创建运行.tail()方法的额外代码单元过于麻烦而不得不中途放弃,你是否有过这样的经历?现在不用怕了,你可以使用以下代码行展示你想展示的输出:

fromIPython.core.interactiveshellimportInteractiveShellInteractiveShell.ast_node_interactivity="all"

下图展现了多个输出的结果:

7.为JupyterNotebook即时创建幻灯片

使用RISE,你可以仅通过一次按键将JupyterNotebook即时转变为幻灯片。而且notebook仍然处于活跃状态,你可以在展示幻灯片的同时执行实时编码!

要想使用该工具,你只需通过conda或pip安装RISE即可。

condainstall-cconda-forgerise

或者

pipinstallRISE

现在,你可以点击新按钮,为notebook创建不错的幻灯片了:<p><img title="深圳网站制作公司案例,深圳网站设计,易捷网络科技" border="0" alt="LED行业网站制作案例深圳深圳市意能达照明有限公司网站制作新闻资讯页面效果图" src="http://www.qilienglish.cn/attached/20130903/20130903160004_1875.jpg" /></p>

LED行业网站制作案例深圳深圳市意能达照明有限公司网站制作新闻资讯页面效果图

相关行业资讯

1、响应式网站设计对seo有哪些好处
2、什么是网站制作套餐,包括些什么
3、深圳网站制作改善哪些问题能够提高用户体验度
4、专业网页制作需要注意哪些问题
5、 新站上线一切都是有可能的哦
6、用个人博客建立个人“品牌”的6个方法
7、SEO应该怎么做好站内优化工作
8、网站制作优化中的内容为王和用户体验
9、SEO优化之网站内容及文章优化经验分享
10、网站结构优化:切勿捡了芝麻丢了西瓜
11、网站极致页面得分的优化思路
12、企业在定制网站时需要了解的四点建议
13、企业网站优化推广常用的几个方法
14、网站建设前期准备
15、怎样提升用户网站的优化体验度
16、企业网络营销推广没有效果之错误想法
17、网站建设完成后别让企业网站变成摆设
18、网站seo优化网页设计概况
19、深圳网站建设中如何避免与客户产生不必要的矛盾
20、有哪些条件可以建立一个网站建设公司
21、导致网站快照不更新的原因
22、网络营销推广方式大合集
23、网站建设如何满足更多用户的需求
24、企业网站建设一般都包括哪些方面的内容
25、域名注册信息真实性有什么重要性
26、企业网站建设有哪些好处作用是什么
27、网站建设如何把二手域名运用得当
28、如何做好展览馆信息化网站建设
29、企业网站制作不好的原因有哪些
30、电商网站首页设计要考虑哪几点
31、社交媒体对网站制作的影响
32、seo优化从哪几个方面来稳定网站排名
33、网站制作哪个公司好什么样的建站公司靠谱
34、让网站体验性加强的几个方法
35、图像处理在网站制作中的重要性
36、企业网站网页设计重要性第一印象
37、手机终端营销之手机邮件的5个建议
38、即便“草根”也拥有“巨人”的梦想与执行力
39、页面之间的关联性会否影响搜索引擎抓取
40、影响动漫网站用户黏性和忠诚度的6因素
41、B2C商城设计思路构建电商平台
42、医院网络推广竞价实战操作经验
43、网络推广公司需要注意的程序
44、深圳网站制作首选易捷网络一站式互联网解决方案
45、怎样设计有效的网站导航
46、新手如何自己建站
47、做推广优化必须要有的思维
48、页面内容调整可以利用百度统计来做
49、还在为你们的关键词排名不稳定而发愁吗
50、怎么解决竞价网站跳出率的问题
深圳市易捷网络科技有限公司版权所有    粤ICP备2022153140号