【数据分析】:jupyter notebook魔法命令与数据分析

2019-08-26  本文已影响0人  Alcazar

📖 一、 数据分析

【百度百科简介】:指用适当的统计分析方法对收集来的大量数据进行分析,提取有用信息和形成结论而对数据加以详细研究和概括总结的过程。

【关于就业】:数据分析师(初级,高级,专家...)等。


【图片来源】:Boss直聘

【数据来源】:谈及大数据、数据分析,那么就不可避免的要谈到如何获取数据,这可是一个非常非常令人头疼闹热的问题,当前的信息时代数据量十分庞大,复杂,所以,如何获取有价值的数据,是一门值得考究的学问。数据的主要来源有以下几方面:

1、搜索引擎-爬虫抓取数据;

2、网站IPPV等基本数据;

3、网站的HTTP响应时间数据;

4、网站流量来源数据。


📖 二、关于Jupyter Notebook

【简介】:upyter Notebook是基于网页的用于交互计算的应用程序。其可被应用于全过程计算:开发、文档编写、运行代码和展示结果。——Jupyter Notebook官网

【特点】:以网页的形式打开,可以在网页页面中直接编写代码和运行代码,代码的运行结果也会直接在代码块下显示。

1、安装
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple juniper
2、启动

命令提示符窗口中输入jupyter notebook
如果你的jupyter notebook文件不在c盘根目录,那么可以通过

cd +文件路径
jupyter notebook
(运行)
运行成功
当出现如上图所示信息后,浏览器没有自动打开jupyter notebook,那么我么可以手动复制上图链接,在浏览器中打开。
【注释】:在运行过程中,不可以关闭命令提示符窗口
【关于安装和配置可参考】:https://www.jianshu.com/p/91365f343585
3、jupyter notebook的主要优点与用途

除此之外,根据 jupyter notebook的特点,它在以下几个板块的学习和开发中,都有不错的帮助:

📖 三、 jupyter notebook的简单使用

# 使用tab键来探索代码

# 使用tab键导包时,自动补全
from itertools import count

#结合通配符使用。例如:找到字符串对象中,包含find的方法
str.*find?
jupyter notebook魔法命令

魔法命令主要分为两大类:

下面将介绍比较常用的一些函数:

魔法函数 函数说明
%run 运行脚本文件(执行外部的代码)
%timeit 测试代码性能(测试一行Python语句的执行时间)
%%itmeit 测试代码性能(执行多行语句)
%lsmagic 列出所有魔法命令
%命令? 查看魔法命令详细说明
%history 输入的历史记录
%xmode 【异常控制 】可以在轨迹追溯中找到错误的原因
%xmode Plain 以紧凑的方式显示异常信息
%debug 用来在交互环境中,调试程序

详细介绍:

1、%timeit%%timeit
%timeit L = [n ** 2 for n in range(100)]

【输出】:28.2 µs ± 2.24 µs per loop (mean ± std. dev. of 7 runs, 10000 loops each)

# %%timeit 用来执行多行语句
%%timeit
L = []
for n in range(100):
    L.append(n ** 2)

【输出】:33.7 µs ± 742 ns per loop (mean ± std. dev. of 7 runs, 10000 loops each)

【结论】:%timeit的执行更高效。

2、%lsmagic
# 列出所有可用的魔法命令
%lsmagic
Available line magics:
%alias  %alias_magic  %autoawait  %autocall  %automagic  %autosave  %bookmark  %cd  %clear  %cls  %colors  %conda  %config  %connect_info  %copy  %ddir  %debug  %dhist  %dirs  %doctest_mode  %echo  %ed  %edit  %env  %gui  %hist  %history  %killbgscripts  %ldir  %less  %load  %load_ext  %loadpy  %logoff  %logon  %logstart  %logstate  %logstop  %ls  %lsmagic  %macro  %magic  %matplotlib  %mkdir  %more  %notebook  %page  %pastebin  %pdb  %pdef  %pdoc  %pfile  %pinfo  %pinfo2  %pip  %popd  %pprint  %precision  %prun  %psearch  %psource  %pushd  %pwd  %pycat  %pylab  %qtconsole  %quickref  %recall  %rehashx  %reload_ext  %ren  %rep  %rerun  %reset  %reset_selective  %rmdir  %run  %save  %sc  %set_env  %store  %sx  %system  %tb  %time  %timeit  %unalias  %unload_ext  %who  %who_ls  %whos  %xdel  %xmode

Available cell magics:
%%!  %%HTML  %%SVG  %%bash  %%capture  %%cmd  %%debug  %%file  %%html  %%javascript  %%js  %%latex  %%markdown  %%perl  %%prun  %%pypy  %%python  %%python2  %%python3  %%ruby  %%script  %%sh  %%svg  %%sx  %%system  %%time  %%timeit  %%writefile

Automagic is ON, % prefix IS NOT needed for line magics.
# 查看魔法命令的帮助文档,使用?
%timeit?
%timeit?.png
3、 %xmode

【异常控制】:可以在轨迹追溯中找到错误的原因。

def func1(a,b):
    return a / b

def func2(x):
    a = x
    b = x - 1
    return func1(a,b)

func2(1)

【输出】:

---------------------------------------------------------------------------
ZeroDivisionError                         Traceback (most recent call last)
<ipython-input-7-3129750ef57b> in <module>
      7     return func1(a,b)
      8 
----> 9 func2(1)

<ipython-input-7-3129750ef57b> in func2(x)
      5     a = x
      6     b = x - 1
----> 7     return func1(a,b)
      8 
      9 func2(1)

<ipython-input-7-3129750ef57b> in func1(a, b)
      1 def func1(a,b):
----> 2     return a / b
      3 
      4 def func2(x):
      5     a = x

ZeroDivisionError: division by zero

4、%xmode Plain
%xmode Plain # 以紧凑的方式显示异常信息
func2(1)

【输出】:

Exception reporting mode: Plain
Traceback (most recent call last):

  File "<ipython-input-63-2c0c65acd0a8>", line 2, in <module>
    func2(1)

  File "<ipython-input-61-24291467c7c0>", line 7, in func2
    return func1(a,b)

  File "<ipython-input-61-24291467c7c0>", line 2, in func1
    return a / b

ZeroDivisionError: division by zero
上一篇下一篇

猜你喜欢

热点阅读