最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

五個(gè)Jupyter?Notebook實(shí)用魔法命令分享

 更新時(shí)間:2023年07月17日 14:23:15   作者:databook  
Jupyter?Notebook是一個(gè)開源的交互式編程環(huán)境,用于創(chuàng)建和共享包含實(shí)時(shí)代碼、文本等,本文主要來和大家分享一些有趣的Jupyter?Notebook魔法命令,需要的可以參考一下

Jupyter Notebook是一個(gè)開源的交互式編程環(huán)境,用于創(chuàng)建和共享包含實(shí)時(shí)代碼、文本、圖像和可視化輸出的文檔。

它交互式的編程方式是一大亮點(diǎn),因?yàn)槲覀冊(cè)跀?shù)據(jù)分析的過程中,常常是一邊分析,一邊看分析結(jié)果,根據(jù)分析結(jié)果再調(diào)整數(shù)據(jù)或者分析參數(shù)。

有了 Jupyter Notebook,代碼和運(yùn)行結(jié)果可以一起展示,省了很多來回切換的麻煩操作。

此外,它是基于Web的應(yīng)用程序,所以展示運(yùn)行結(jié)果的方式很豐富,不僅僅是文字,圖表等也一樣可以展示。

Jupyter Notebook不僅僅支持python語言,還支持其他幾種常用于數(shù)據(jù)分析的語言,比如 JuliaR 等等。

介紹如何使用Jupyter Notebook編程和寫文檔的文章很多,本篇主要介紹幾個(gè)使用Jupyter Notebook時(shí)常用的幾個(gè)魔法命令。

這些魔法命令主要提供一些額外的功能和控制Notebook環(huán)境的行為。

1. 文件和路徑

查看當(dāng)前路徑:

%pwd
#運(yùn)行結(jié)果(環(huán)境不一樣,下面的路徑會(huì)不一樣):
'd:\\projects\\python\\notebooks'

魔法命令的結(jié)果還可以存儲(chǔ)到python變量中。

cur_path = %pwd
print(cur_path)
#運(yùn)行結(jié)果:
'd:\\projects\\python\\notebooks'

列出當(dāng)前文件夾下的文件:

%ls

這個(gè)命令在不同的系統(tǒng)中會(huì)自動(dòng)調(diào)用不同的命令,

比如在Linux系統(tǒng)中,調(diào)用ls命令,在Windows系統(tǒng)中,會(huì)調(diào)用 dir 命令。

2. 自動(dòng)保存

隨時(shí)保存自己的代碼和文檔是好習(xí)慣,如果怕忘了保存,也可以設(shè)置Jupyter Notebook的自動(dòng)保存時(shí)間。

比如:

%autosave 10
#運(yùn)行結(jié)果
Autosaving every 10 seconds

每隔10秒會(huì)自動(dòng)保存一次。

3. 查看歷史

查看執(zhí)行過的歷史命令,這里不僅僅是歷史執(zhí)行的魔法命令,也包括執(zhí)行過的python代碼。

%history

通過復(fù)制歷史命令,我們?cè)俅螆?zhí)行之前的命令或代碼時(shí),不用再輸入一遍。

如果歷史命令太多,也可以指定只顯示最近的N條命令:

%history -l 3
#只顯示最近3條命令

4. 性能檢測(cè)

數(shù)據(jù)分析時(shí),經(jīng)常接觸到數(shù)量龐大的數(shù)據(jù)。

編寫分析代碼處理龐大的數(shù)據(jù)時(shí)遇到性能問題是常事,Jupyter Notebook有兩個(gè)魔法命令可以幫助我們定位性能問題。

第一個(gè)是 %time,能夠顯示函數(shù)運(yùn)行時(shí)間的相關(guān)信息:

def sum(n):
    s = 0
    for i in range(n):
        s += i
    return s
%time sum(100000)
%time sum(200000)
#運(yùn)行結(jié)果
CPU times: total: 93.8 ms
Wall time: 87.9 ms
CPU times: total: 172 ms
Wall time: 168 ms

其中,

  • CPU time是程序在處理器上實(shí)際運(yùn)行的時(shí)間
  • Wall time是程序從開始執(zhí)行到結(jié)束所花費(fèi)的時(shí)間(包括了等待資源、I/O 操作等與CPU 時(shí)間無關(guān)的時(shí)間)

上面的示例中,第二次的運(yùn)算量是第一個(gè)的兩倍,耗費(fèi)的時(shí)間也差不多是兩倍。

除了 %time,還有一個(gè) %timeit 命令,

它會(huì)統(tǒng)計(jì)多次運(yùn)行后的結(jié)果,得到的結(jié)果更加可靠一些。

def sum(n):
    s = 0
    for i in range(n):
        s += i
    return s
%timeit sum(1000000)
#運(yùn)行結(jié)果
63.9 ms ± 2.97 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

運(yùn)行結(jié)果的含義如下:

  • 63.9 ms 是運(yùn)行時(shí)間的平均值
  • 2.97 ms是標(biāo)準(zhǔn)差,也就是運(yùn)行時(shí)間的上下浮動(dòng)范圍
  • 7 runs表示一共運(yùn)行了7
  • 10 loops each表示每輪循環(huán)運(yùn)行了10

%timeit 運(yùn)行多少輪,以及每輪運(yùn)行多少次是可以設(shè)置的。

def sum(n):
    s = 0
    for i in range(n):
        s += i
    return s
%timeit -n 20 -r 10 sum(1000000)
#運(yùn)行結(jié)果
66.7 ms ± 4.75 ms per loop (mean ± std. dev. of 10 runs, 20 loops each)

-r 參數(shù)指定運(yùn)行多少輪,-n參數(shù)指定每輪運(yùn)行多少次。

5. 繪圖相關(guān)

最后,介紹在Jupyter Notebook中使用matplotlib繪圖時(shí)用到的魔法命令。

5.1. 直接顯示

%matplotlib inline,直接顯示在代碼的下方,這也是最常用的方式。

import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
x = np.arange(0, 10, 1)
y = x*x + 2
plt.plot(x, y)
plt.show()

5.2. 使用 TK 繪制

%matplotlib tk,會(huì)彈出新的窗口顯示圖形,并且圖形可以交互。

import matplotlib.pyplot as plt
import numpy as np
%matplotlib tk
x = np.arange(0, 10, 1)
y = x*x + 2
plt.plot(x, y)
plt.show()

紅色框標(biāo)出的就是交互的按鈕。

5.3. 使用 notebook 繪制

%matplotlib notebook和使用tk是類似的,只是不彈出新的窗口。

import matplotlib.pyplot as plt
import numpy as np
%matplotlib notebook
x = np.arange(0, 10, 1)
y = x*x + 2
plt.plot(x, y)
plt.show()

這種方式同樣是可以交互的。

到此這篇關(guān)于五個(gè)Jupyter Notebook實(shí)用魔法命令分享的文章就介紹到這了,更多相關(guān)Jupyter Notebook魔法命令內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python實(shí)現(xiàn)將doc轉(zhuǎn)化pdf格式文檔的方法

    Python實(shí)現(xiàn)將doc轉(zhuǎn)化pdf格式文檔的方法

    這篇文章主要介紹了Python實(shí)現(xiàn)將doc轉(zhuǎn)化pdf格式文檔的方法,結(jié)合實(shí)例形式分析了Python實(shí)現(xiàn)doc格式文件讀取及轉(zhuǎn)換pdf格式文件的操作技巧,以及php調(diào)用py文件的具體實(shí)現(xiàn)方法,需要的朋友可以參考下
    2018-01-01
  • Python使用pywebview開發(fā)一個(gè)現(xiàn)代化、跨平臺(tái)的桌面應(yīng)用

    Python使用pywebview開發(fā)一個(gè)現(xiàn)代化、跨平臺(tái)的桌面應(yīng)用

    在當(dāng)今科技快速發(fā)展的時(shí)代,為了提供更好的用戶體驗(yàn),許多應(yīng)用程序都轉(zhuǎn)向了桌面應(yīng)用的開發(fā),pywebview是一款優(yōu)秀的庫,它使得用Web技術(shù)開發(fā)桌面應(yīng)用變得輕而易舉,本文將深入探討如何使用pywebview創(chuàng)建現(xiàn)代化、跨平臺(tái)的桌面應(yīng)用,需要的朋友可以參考下
    2025-12-12
  • Python使用單例模式創(chuàng)建類的實(shí)現(xiàn)示例

    Python使用單例模式創(chuàng)建類的實(shí)現(xiàn)示例

    本文詳細(xì)介紹了Python中實(shí)現(xiàn)單例模式的多種方式,包括元類、threading.Lock、模塊、importlib、__new__方法和裝飾器等,感興趣的可以了解一下
    2024-12-12
  • Python中綁定與未綁定的類方法用法分析

    Python中綁定與未綁定的類方法用法分析

    這篇文章主要介紹了Python中綁定與未綁定的類方法用法,結(jié)合實(shí)例形式分析了未綁定的類方法與綁定的實(shí)例方法相關(guān)使用技巧,需要的朋友可以參考下
    2016-04-04
  • python學(xué)習(xí)之列表的運(yùn)用

    python學(xué)習(xí)之列表的運(yùn)用

    這篇文章主要介紹了python學(xué)習(xí)之列表的運(yùn)用,文章首先通過創(chuàng)建列表展開列表運(yùn)用的相關(guān)資料,具有一定的參考價(jià)值,需要的小伙伴可以參考一下
    2022-05-05
  • 淺談python print(xx, flush = True) 全網(wǎng)最清晰的解釋

    淺談python print(xx, flush = True) 全網(wǎng)最清晰的解釋

    今天小編就為大家分享一篇淺談python print(xx, flush = True) 全網(wǎng)最清晰的解釋,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • python lambda表達(dá)式在sort函數(shù)中的使用詳解

    python lambda表達(dá)式在sort函數(shù)中的使用詳解

    這篇文章主要介紹了python lambda表達(dá)式在sort函數(shù)中的使用詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Python?基于TCP?傳輸協(xié)議的網(wǎng)絡(luò)通信實(shí)現(xiàn)方法

    Python?基于TCP?傳輸協(xié)議的網(wǎng)絡(luò)通信實(shí)現(xiàn)方法

    網(wǎng)絡(luò)編程指在網(wǎng)絡(luò)環(huán)境中,如何實(shí)現(xiàn)不在同一物理位置中的計(jì)算機(jī)之間進(jìn)行數(shù)據(jù)通信,本文重點(diǎn)給大家介紹Python?基于TCP?傳輸協(xié)議的網(wǎng)絡(luò)通信實(shí)現(xiàn)方法,感興趣的朋友跟隨小編一起看看吧
    2022-02-02
  • Python streamlit構(gòu)建令人驚嘆的可視化Web高級(jí)主題界面

    Python streamlit構(gòu)建令人驚嘆的可視化Web高級(jí)主題界面

    本文將深入探討Streamlit的方方面面,從基礎(chǔ)使用到高級(jí)主題,從數(shù)據(jù)可視化到部署與分享,更涵蓋了性能優(yōu)化、安全性考慮等最佳實(shí)踐,通過豐富的示例代碼和詳細(xì)解釋,將能夠全面了解Streamlit的強(qiáng)大功能,并在構(gòu)建數(shù)據(jù)驅(qū)動(dòng)應(yīng)用時(shí)游刃有余
    2024-01-01
  • Python中使用pprint函數(shù)進(jìn)行格式化輸出的教程

    Python中使用pprint函數(shù)進(jìn)行格式化輸出的教程

    這篇文章主要介紹了Python中使用pprint函數(shù)進(jìn)行格式化輸出的教程,包括能夠控制輸出寬度等非常有用的特性,需要的朋友可以參考下
    2015-04-04

最新評(píng)論

拉孜县| 南通市| 沂源县| 定州市| 平原县| 井冈山市| 旌德县| 大厂| 罗源县| 宁武县| 蓬安县| 台北县| 荥阳市| 金昌市| 芜湖市| 古蔺县| 桃园县| 长丰县| 烟台市| 桐城市| 黄山市| 濉溪县| 阳城县| 永康市| 逊克县| 天长市| 乌苏市| 沙田区| 白玉县| 晋宁县| 慈利县| 荆州市| 陈巴尔虎旗| 运城市| 合川市| 青川县| 双辽市| 凤冈县| 敦化市| 施秉县| 门源|