为什么使用Python进行数据分析:
1 Python大量的库为数据分析和处理提供了完整的工具集
2 比起R和Matlab等其他主要用于数据分析的编程语言,Python更全能
3 Python库一直在增加,算法的实现采用更具有创新性的方法
4 Python能和很多语言对接,例如高效的C语言
===================================
什么是Ipython?
在数据分析时用的是Ipython。
PyCharm也是一个终端(代码从上至下执行,如果代码量大不利于调试)。
Ipython是一个性能强大的终端(终端有一个特点,写一行执行一行)。
Ipython是以浏览器的方式呈现
Ipython shell:功能强大的交互式shell $ipython
Ipython notebook:(主要使用这个工具)集文本、代码、图像、公式的展现于一体的超级python web界面。在浏览器中编写代码。
从ipython4.0 开始改名为 Jupyter notebook
===================================
什么是 Jupyter?
Ipython notebook:集文本、代码、图像、公式的展现于一体的超级python web界面。
===================================
Ipython使用
ipthon有许多python交互式没有的功能,比如,具有tab补全,对象自省,强大的历史机制,内嵌的源代码编辑,集成python调试器,断点调试等等。ipython和python的最大区别在于,ipython会对命令提示符的每一行进行编号。
pip install jupyter notebook 安装需要的jupyter模块
启动程序:
打开windows 终端,输入 jupyter notebook 命令并回车。
并自动打开浏览器。
现在已经进入jupyter的开发环境了。这个终端不能关闭哦,最小化就行了。
打开地址为当前bash的目录,默认的根目录;
浏览器地址为http://localhost:8888/
通过ctrl + c 终止 jupyter程序。
然后就是在web页面上进行文件夹的创建、改名,ipython notebook的创建和修改名称。新建的ipython notebook如下图所示:
Code模式是代码,然后就可以在编辑框中输入代码,执行代码的方式如下:
Ctrl + Enter 停留在当前行
Alt + Enter 会新插入一行
Shift + Enter 跳到下一行
Run按钮
Markdown是注释,可以进行注释的书写。其余的Raw NBConvert、Heading这两个用不到。
Y:单元转入代码状态
M:单元转入markdown状态
Shift-Tab:提示,看函数的参数信息,比较有用。
IPython的帮助文档
1 使用help()
双击输出左侧,收起输出内容,双击'...',展示合并的内容。
在代码输入栏下边添加一个输入栏,选中输入栏,b
在代码输入栏上边添加一个输入栏,选中输入栏,a
想要删除一个输入栏,选中输入栏,dd
2 使用?
??可以将函数的源码显示出来
两个问号把自定义的源码显示出来了。
Tab自动补全:
IPython 魔法命令:
1 运行外部Python文件,之前写的代码可以拿过来执行
使用下面命令运行外部python文件(默认是当前目录,最好加上绝对路径,就可以执行任何路径下的文件了)
%run *.py
编辑的外部文件内容:
运行这个外部文件:
需要注意,当我们使用魔法命令执行了一个外部文件时,该文件的函数就能在当前会话中使用。相当于把外部文件中的所有方法全部导入到Jupyter notebook中。
2 运行计时 代码运行效率一目了然
用下面的命令计算statement的运行时间:
%time statement
用下面的命令计算statement的平均运行时间:
%timeit statement
timeit会多次运行statement,最后得到一个更为精确的预期运行时间
可以使用两个%来测试多行对吗的平均运行时间:
%%timeit
statement1
statement2
statement3
...
浏览器只是起到接受用户输入,显示终端输出的作用,代码的运行还是在终端上进行的。
3 查看当前会话中的所有变量与函数
%who
查看当前会话的所有变量与函数名称的详细信息:
%whos
4 执行Linux命令 前提是,你的终端试运行在linux系统上的。
! echo "hello"
在linux命令之前加上!,即可在ipython当中执行linux指令。
注意会将标准输入以字符串形式返回。
5 更多魔法命令
%lsmagic
最后强调一下,百看不如一练。