Jupyter Notebook กับ JupyterLab ต่างกันอย่างไร?


133

ฉันยังใหม่กับสมุดบันทึก jupyter ความแตกต่างที่สำคัญระหว่างสมุดบันทึก jupyter กับห้องปฏิบัติการ jupyter คืออะไรแนะนำให้ฉันเลือกเครื่องที่ดีที่สุดซึ่งควรใช้ในอนาคต

คำตอบ:


105

Jupyter Notebook เป็นสภาพแวดล้อมการคำนวณเชิงโต้ตอบบนเว็บสำหรับการสร้างเอกสารสมุดบันทึก Jupyter รองรับหลายภาษาเช่น Python (IPython), Julia, R เป็นต้นและส่วนใหญ่ใช้สำหรับการวิเคราะห์ข้อมูลการสร้างภาพข้อมูลและการประมวลผลเชิงโต้ตอบเชิงสำรวจเพิ่มเติม

JupyterLab เป็นอินเทอร์เฟซผู้ใช้รุ่นใหม่รวมถึงโน้ตบุ๊กรวมทั้งโน๊ตบุ๊คมีโครงสร้างแบบแยกส่วนซึ่งคุณสามารถเปิดสมุดบันทึกหรือไฟล์ต่างๆ (เช่น HTML, Text, Markdowns ฯลฯ ) เป็นแท็บในหน้าต่างเดียวกัน มอบประสบการณ์ที่เหมือน IDE มากขึ้น

สำหรับผู้เริ่มต้นฉันขอแนะนำให้เริ่มต้นด้วย Jupyter Notebook เนื่องจากประกอบด้วยแค่เบราว์เซอร์ไฟล์และมุมมองตัวแก้ไข (โน้ตบุ๊ก) อาจใช้ง่ายกว่านี้ หากคุณต้องการคุณสมบัติเพิ่มเติมให้เปลี่ยนไปใช้ JupyterLab JupyterLab นำเสนอคุณสมบัติอื่น ๆ อีกมากมายและอินเทอร์เฟซที่ได้รับการปรับปรุงซึ่งสามารถขยายผ่านส่วนขยาย: JupyterLab Extensions (GitHub)


12
จริง ๆ แล้วฉันจะเถียงว่า Jupyterlab ดูน่าสนใจ แต่มีคุณสมบัติน้อยกว่า
Chris

1
Jupiter Lab มีเบราว์เซอร์ไฟล์
vasili111

3
JupyterLab ไม่เหมาะสำหรับการแสดงภาพข้อมูลเช่นการวางแผน เหตุผลที่เปลี่ยนมาใช้สมุดบันทึก Jupyter
Kaisar

1
@Kaisar คุณเจอความท้าทายอะไรบ้างกับ JupyterLab ที่วางแผนไว้
vestland

ฉันเขียนโค้ดเพื่อรับแผนภาพ sankey และ JL จะไม่แสดง อย่างไรก็ตามรหัสเดียวกันนี้ใช้ได้ในสมุดบันทึก Jupyter
Kaisar

57

ในเวลานี้ (กลางปี ​​2019) ด้วยการเปิดตัว JupyterLab 1.0 ในฐานะผู้ใช้ฉันคิดว่าเราควรนำ JupyterLab มาใช้ในชีวิตประจำวัน และจากเอกสารอย่างเป็นทางการของ JupyterLab :

JupyterLab รุ่นปัจจุบันเหมาะสำหรับการใช้งานประจำวันทั่วไป

และ

JupyterLab จะเข้ามาแทนที่Jupyter Notebook แบบคลาสสิกในที่สุด ตลอดช่วงการเปลี่ยนแปลงนี้รูปแบบเอกสารสมุดบันทึกเดียวกันจะได้รับการสนับสนุนทั้ง Notebook แบบคลาสสิกและ JupyterLab


โปรดทราบว่า JupyterLab มีสถาปัตยกรรมโมดูลาร์ที่ขยายได้ ดังนั้นในสมัยก่อนมี Jupyter Notebook เพียงเครื่องเดียวและตอนนี้มี JupyterLab (และในอนาคต) Notebookเป็นเพียงหนึ่งในแอปพลิเคชันหลักใน JupyterLab (พร้อมกับอื่น ๆ เช่นคอนโซลโค้ดเทอร์มินัลบรรทัดคำสั่งและข้อความ บรรณาธิการ ).


5

โพสต์อื่น ๆ ได้ชี้ให้เห็นว่า Jupyter Notebook (JN) อาจใช้งานง่ายกว่า JupyterLab (JL) สำหรับผู้เริ่มต้น แต่ฉันจะต้องไม่เห็นด้วย

ข้อได้เปรียบที่ยอดเยี่ยมสำหรับ JLและความแตกต่างที่สำคัญที่สุดอย่างหนึ่งระหว่าง JL และ JN คือคุณสามารถเรียกใช้บรรทัดเดียวและแม้แต่ข้อความที่ไฮไลต์ได้ง่ายขึ้น ฉันชอบใช้แป้นพิมพ์ลัดสำหรับสิ่งนี้และการกำหนดทางลัดค่อนข้างตรงไปตรงมา

และความจริงที่ว่าคุณสามารถรันโค้ดในคอนโซล Pythonทำให้ JL สนุกกับการทำงานมากขึ้น คำตอบอื่น ๆ ได้กล่าวถึงเรื่องนี้แล้ว แต่ JL สามารถถือเป็นเครื่องมือในการเรียกใช้ Notebook และอื่น ๆได้ในบางวิธี ดังนั้นวิธีที่ฉันใช้ JupyterLab คือการตั้งค่าด้วยไฟล์. ipynb เบราว์เซอร์ไฟล์และคอนโซล python ดังนี้:

ใส่คำอธิบายภาพที่นี่

และตอนนี้คุณมีเครื่องมือเหล่านี้แล้ว:

  1. ดูไฟล์การรันเคอร์เนลคำสั่งเครื่องมือโน้ตบุ๊กเปิดแท็บหรือตัวจัดการส่วนขยาย
  2. เรียกใช้เซลล์โดยใช้ตัวเลือกอื่น ๆ Ctrl+Enter
  3. เรียกใช้นิพจน์บรรทัดหรือข้อความที่ไฮไลต์โดยใช้ตัวเลือกเมนูหรือแป้นพิมพ์ลัด
  4. รันโค้ดโดยตรงในคอนโซลโดยใช้ Shift+Enter
  5. ตรวจสอบตัวแปรดาต้าเฟรมหรือพล็อตอย่างรวดเร็วและง่ายดายในคอนโซลโดยไม่เกะกะเอาต์พุตโน้ตบุ๊กของคุณ

2

( ฉันใช้ JupyterLab กับ Julia )

สิ่งแรกคือห้องปฏิบัติการ Jupyter จากการใช้งานครั้งก่อนของฉันมี 'ธีม' มากขึ้นซึ่งดีต่อสายตาและการเปลี่ยนแปลงขนาดฟอนต์ที่ไม่ขึ้นกับเบราว์เซอร์จึงทำให้ใกล้เคียงกับ IDE มากขึ้น มีข้อมูลเฉพาะบางอย่างที่ฉันชอบเช่นการเปลี่ยน 'ขนาดฟอนต์ของโค้ด' และปล่อยให้ขนาดฟอนต์ของอินเทอร์เฟซเหมือนเดิม

คุณสมบัติหลัก ๆ ที่ยอดเยี่ยมคือ

  • การลากและวางเซลล์เพื่อให้คุณสามารถจัดเรียงรหัสใหม่ได้อย่างง่ายดาย
  • การยุบเซลล์ด้วยการคลิกเมาส์เพียงครั้งเดียวและทำเครื่องหมายเล็ก ๆ เพื่อเตือนตำแหน่ง

สิ่งที่สำคัญยิ่งคือความสามารถในการแบ่งมุมมองของแท็บและเทอร์มินัล หากคุณใช้ Emacs คุณอาจสนุกกับการมีบัฟเฟอร์หลายตัวที่มีการจัดเรียงแนวนอนและแนวตั้งโดยหนึ่งในนั้นใช้เชลล์ (เทอร์มินัล) และด้วย jupyterlab สิ่งนี้สามารถทำได้และการจัดเรียงจะทำด้วยการลากและวางซึ่งโดยทั่วไปแล้วใน Emacs ทำด้วยชุดคำสั่ง

( ฉันไม่เชื่อว่ามีการเพิ่มเส้นโค้งการเรียนรู้ให้กับผู้ที่ไม่ได้ใช้เวอร์ชันดั้งเดิมของ 'สมุดบันทึก' ก่อนคุณสามารถดำดิ่งสู่ประสบการณ์ IDE นี้ได้โดยตรง )


0

คำตอบนี้แสดงให้เห็นถึงมุมมองของ python Jupyterรองรับภาษาต่างๆนอกเหนือจาก python

ทั้ง Jupyter Notebook และ Jupyterlab เป็นสภาพแวดล้อม Python แบบโต้ตอบที่เข้ากันได้กับเบราว์เซอร์ (เช่นไฟล์ python ".ipynb") ซึ่งคุณสามารถแบ่งส่วนต่างๆของโค้ดออกเป็นเซลล์ที่ทำงานได้ทีละเซลล์เพื่อให้อ่านได้ง่ายขึ้น ทั้งสองอย่างนี้เป็นที่นิยมในโดเมน Data Science / Scientific Computing

ฉันขอแนะนำให้คุณใช้ Jupyterlab สำหรับข้อดีของโน้ตบุ๊ค Jupyter:

  1. ใน Jupyterlab คุณสามารถสร้างไฟล์ ".py" ไฟล์ ".ipynb" เปิดเทอร์มินัล ฯลฯ Jupyter Notebook อนุญาตไฟล์ ".ipynb" ในขณะที่ให้คุณเลือกได้ว่าจะเลือก "python 2" หรือ "python 3"
  2. Jupyterlab สามารถเปิดไฟล์ ".ipynb" ได้หลายไฟล์ภายในแท็บเบราว์เซอร์เดียว ในขณะที่ Jupyter Notebook จะสร้างแท็บใหม่เพื่อเปิดไฟล์ ".ipynb" ใหม่ทุกครั้ง การวางเมาส์เหนือแท็บต่างๆของเบราว์เซอร์เป็นเรื่องที่น่าเบื่อดังนั้น Jupyterlab จึงมีประโยชน์มากกว่าที่นี่

ฉันขอแนะนำให้ใช้PIPเพื่อติดตั้ง Jupyterlab

หากคุณไม่สามารถเปิดไฟล์ ".ipynb" โดยใช้ Jupyterlab บนระบบ Windows ให้ทำตามขั้นตอนต่อไปนี้:

  1. ไปที่ไฟล์ -> คลิกขวา -> เปิดด้วย -> เลือกแอปอื่น -> แอปเพิ่มเติม -> ค้นหาแอปอื่นบนพีซีเครื่องนี้ -> คลิก
  2. เพื่อเปิดหน้าต่าง file explorer ตอนนี้เข้าไปในโฟลเดอร์การติดตั้ง Python ของคุณ คุณควรเห็นโฟลเดอร์สคริปต์ เข้าไปข้างใน
  3. เมื่อคุณพบjupyter-lab.exeแล้วให้เลือกและตอนนี้มันจะเปิดไฟล์. ipynb ตามค่าเริ่มต้นบนพีซีของคุณ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.