杨韬的Python/Jupyter学习笔记

Posted 杨韬的学习备忘录

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了杨韬的Python/Jupyter学习笔记相关的知识,希望对你有一定的参考价值。


Python 安装库

安装Jupyter Notebook

  1. 先安装Python
  2. cmd 进入K:\\Jupyter Notebook Python\\Python_3.6.4\\Scripts目录
  3. cmd 输入 pip install jupyter 开始安装
  4. 运行 Python_3.6.4\\Scripts下的 jupyter-notebook.exe

安装numpy 数学包

  1. 到https://pypi.python.org/pypi/numpy#downloads 下载对应版本的numpy-1.14.0-cp36-none-win_amd64.whl 文件,复制到Scripts目录下安装
    cmd运行 在K:\\Jupyter Notebook Python\\Python_3.6.4\\Scripts>

  2. pip install numpy-1.14.0-cp36-none-win_amd64.whl

安装绘图包matplotlib

  1. cmd 输入 pip install matplotlib

安装pandas 数据输入输出库

  1. cmd 输入 pip install pandas

安装seaborn绘图库

  1. cmd 输入 pip install seaborn

pip安装命令

  1. 安装 pip install jupyterthemes

  2. 安装最新版本 pip install --upgrade jupyterthemes

  3. 安装指定版本 pip install jupyterthemes==0.18.3

  4. 实际上pip instal 既可以安装本地.whl 也可以在线安装

  5. 若在线安装失败,如UnicodeDecodeError: \'gbk\' codec can\'t decode 这类问题。可能需要安装之前的指定版本

import math 
math.sin(3)
0.1411200080598672
words = [\'cat\', \'window\', \'defenestrate\']
for w in words:
    print("单词 "+w, "长度"+str(len(w)))
单词 cat 长度3
单词 window 长度6
单词 defenestrate 长度12
# 绘图包 matplotlib 的使用
# https://liam0205.me/2014/09/11/matplotlib-tutorial-zh-cn/
# http://codingpy.com/article/a-quick-intro-to-matplotlib/
import matplotlib.pyplot as plt # 需要先包含绘图包 
import numpy as np

x = np.arange(20)
y = x**2

plt.plot(x, y)
plt.show() # 显示图形

#参考 http://codingpy.com/article/a-quick-intro-to-matplotlib/

$$ \\int_0^{+\\infty} x^2 dx $$

# 自定义曲线的外观
x = np.linspace(0, 2 * np.pi, 50)
plt.plot(x, np.sin(x), \'r-o\',
        x, np.cos(x), \'g--\')   # r g 颜色   - 线型
plt.show()

# 彩色映射散点图
x = np.random.rand(1000)
y = np.random.rand(1000)

size = np.random.rand(1000) * 50
colour = np.random.rand(1000)

plt.scatter(x, y, size, colour) # 散点图
plt.colorbar() #颜色栏
plt.show()
 ![](http://images2017.cnblogs.com/blog/151822/201801/151822-20180113001655894-342726755.png)
import matplotlib.pyplot as plt
import numpy as np

from mpl_toolkits.mplot3d import Axes3D

np.random.seed(42)

# 采样个数500
n_samples = 500
dim = 3

# 先生成一组3维正态分布数据,数据方向完全随机
samples = np.random.multivariate_normal(
    np.zeros(dim),
    np.eye(dim),
    n_samples
)

# 通过把每个样本到原点距离和均匀分布吻合得到球体内均匀分布的样本
for i in range(samples.shape[0]):
    r = np.power(np.random.random(), 1.0/3.0)
    samples[i] *= r / np.linalg.norm(samples[i])

upper_samples = []
lower_samples = []

for x, y, z in samples:
    # 3x+2y-z=1作为判别平面
    if z > 3*x + 2*y - 1:
        upper_samples.append((x, y, z))
    else:
        lower_samples.append((x, y, z))

fig = plt.figure(\'3D scatter plot\')
ax = fig.add_subplot(111, projection=\'3d\')

uppers = np.array(upper_samples)
lowers = np.array(lower_samples)

# 用不同颜色不同形状的图标表示平面上下的样本
# 判别平面上半部分为红色圆点,下半部分为绿色三角
ax.scatter(uppers[:, 0], uppers[:, 1], uppers[:, 2], c=\'r\', marker=\'o\')
ax.scatter(lowers[:, 0], lowers[:, 1], lowers[:, 2], c=\'g\', marker=\'^\')

plt.show()

# 参考 https://zhuanlan.zhihu.com/p/24309547

使用pandas数据输入输出库

参考 http://python.jobbole.com/80853/

import pandas as pd
 
df = pd.DataFrame({  \'A\' : 1.,
                                    \'B\' : pd.Timestamp(\'20130102\'),
                                    \'C\' : pd.Series(1, index=list(range(4)), dtype=\'float32\'),
                                    \'D\' : pd.Series([1, 2, 1, 2], dtype=\'int32\'),
                                    \'E\' : pd.Categorical(["test", "train", "test", "train"]),
                                    \'F\' : \'foo\' })
df
A B C D E F
0 1.0 2013-01-02 1.0 1 test foo
1 1.0 2013-01-02 1.0 2 train foo
2 1.0 2013-01-02 1.0 1 test foo
3 1.0 2013-01-02 1.0 2 train foo
df.B
0   2013-01-02
1   2013-01-02
2   2013-01-02
3   2013-01-02
Name: B, dtype: datetime64[ns]

使用Seaborn绘图库

Seaborn本质上使用Matplotlib作为核心库,默认情况下就能创建赏心悦目的图

# http://python.jobbole.com/80853/

import seaborn as sns
 
# Load one of the data sets that come with seaborn
tips = sns.load_dataset("tips")
 
sns.jointplot("total_bill", "tip", tips, kind=\'reg\');

tips.head()
total_bill tip sex smoker day time size
0 16.99 1.01 Female No Sun Dinner 2
1 10.34 1.66 Male No Sun Dinner 3
2 21.01 3.50 Male No Sun Dinner 3
3 23.68 3.31 Male No Sun Dinner 2
4 24.59 3.61 Female No Sun Dinner 4
sns.lmplot("total_bill", "tip", tips, col="smoker");

其它参考

http://blog.csdn.net/qq_34264472/article/details/53814653

https://www.cnblogs.com/kylinlin/p/5236601.html

http://blog.csdn.net/u013082989/article/details/73278458

https://www.cnblogs.com/gczr/p/6767175.html

Python·Jupyter Notebook各种使用方法记录

http://blog.csdn.net/tina_ttl/article/details/51031113

Jupyter更换主题

https://github.com/dunovank/jupyter-themes

安装主题

  1. pip install jupyterthemes

若出现UnicodeDecodeError: \'gbk\' 中文问题,可安装之前的版本
pip install jupyterthemes==0.18.3

查看已安装带主题

  1. 命令行 jt -l

应用主题

  1. 命令行 jt -t onedork -f fira -fs 13

-fs 13 字体

回复原始状态

  1. jt -r
# 嵌入视频
from IPython.display import VimeoVideo
VimeoVideo("63250251",with=600, height=400)
  File "<ipython-input-21-5e0fd48278da>", line 3
    VimeoVideo("63250251",with=600, height=400)
                             ^
SyntaxError: invalid syntax
# 交互图表
import ipywidgets

a=ipywidgets.IntSlider(value=5,min=0, max=10, step=1)
a
ipywidgets.Text()
# 嵌入HTML页面
from IPython.display import HTML
HTML(\'<iframe src="https://www.baidu.com" width=800 height=400></iframe>\')
# 运行外部.py程序
#    %run xxxx/xxxx.py
# Geo-Json

安装jupyter lab Python IDE

  1. pip install jupyterlab

执行 jupyter lab

以上是关于杨韬的Python/Jupyter学习笔记的主要内容,如果未能解决你的问题,请参考以下文章

python jupyter快速运行片段

python jupyter magic命令片段

学习笔记2Python - Jupyter Notebook界面基础

Mac 安装Pytorch, Jupyter notebook, conda, python3

学习笔记:python3,代码片段(2017)

python Jupyter笔记本 - 数据科学进口