Jupyter Notebook là gì? Hướng dẫn cài đặt và sử dụng Jupyter Notebook
Mục lục
Nếu bạn đã quen với ngôn ngữ lập trình Python, vậy thì chắc chắn bạn sẽ gặp công cụ Jupyter Notebook.
Vậy thì Jupyter Notebook là gì mà không thể thiếu trong ngôn ngữ lập trình Python. Làm sao để sử dụng và cài đặt Jupyter Notebook? Lợi ích mà nó đem lại là gì? Bạn hãy theo dõi bài viết dưới đây của 200Lab để kiếm câu trả lời nhé.
Jupyter Notebook là gì?
Jupyter là một thuật ngữ được ghép từ ba ngôn ngữ lập trình Julia, Python và R. Trước đây Jupyter Notebook có tên là IPython Notebook, đến năm 2014 tách ra khỏi IPython và đổi tên thành Jupyter Notebook.
Jupyter Notebook là một nền tảng tính toán khoa học mã nguồn mở, bạn có thể sử dụng để tạo và chia sẻ các tài liệu có chứa code trực tiếp, phương trình, trực quan hóa dữ liệu và văn bản tường thuật.
Jupyter Notebook được coi là môi trường điện toán tương tác đa ngôn ngữ, hỗ trợ hơn 40 ngôn ngữ lập trình cho người dùng.
Với Jupyter Notebook, người dùng có thể đưa dữ liệu, code, hình ảnh, công thức, video,.. vào trong cùng một file, giúp cho việc trình bày trở nên dễ dàng hơn. Bạn có thể vừa trình chiếu vừa chạy code để tương tác trên đó, cốt lõi của việc này là Markdown.
Lợi ích mà Jupyter Notebook mang lại
Jupyter Notebook được viết bằng các ngôn ngữ như Python, R và Julia, nền tảng này hiện đang được sử dụng rộng rãi. Bên cạnh đó, Jupyter còn tạo ra tài liệu, trực quan hóa dữ liệu và lưu trữ chúng một cách dễ dàng hơn rất nhiều.
Dưới đây là một số lợi ích mà Jupyter Notebook mang lại:
Phân tích khám phá dữ liệu (Exploratory Data Analysis)
Jupyter cho phép người dùng xem kết quả của code in-line (mã inline) mà không cần phụ thuộc vào các phần khác của code.
Trong Notebook mọi ô của code có thể được kiểm tra bất cứ lúc nào, điều này đã giúp Jupyter trở nên khác biệt so với các ID như Pycharm, VSCode. Việc Jupyter có thể xuất code in-line đã giúp ích rất nhiều trong quá trình phân tích khám phá dữ liệu (EDA).
Bộ đệm dễ dàng trong ô tích hợp
Từng ô tự duy trì trạng thái hoạt động sẽ hơi khó, nhưng với Jupyter, công việc này sẽ được thực hiện tự động. Vì Jupyter lưu trữ kết quả hoạt động của mọi ô đang chạy, cho dù là code đang đào tạo mô hình machine learning hay code đang tải xuống gigabyte dữ liệu từ một máy chủ từ xa.
Độc lập ngôn ngữ
Jupyter Notebook ở định dạng JSON, vì thế nó được biết đến là một nền tảng độc lập cũng như độc lập về ngôn ngữ.
Trực quan hóa dữ liệu (Data Visualisation)
Jupyter Notebook hỗ trợ trực quan hóa dữ liệu và hiển thị thêm một số đồ họa và biểu đồ. Những điều này được tạo ra từ code với sự trợ giúp của các mô -đun như Matplotlib, Plotly hoặc Bokeh. Ngoài ra, Jupyter còn cho phép người dùng cùng chia sẻ code và bộ dữ liệu hoặc thay đổi tương tác với nhau.
Tương tác trực tiếp với code
Jupyter Notebook sử dụng “ipywidgets” packages, cung cấp cho người dùng giao diện chuẩn nhằm khám phá sự tương tác trực tiếp với code và với dữ liệu. Người dùng có thể chỉnh sửa và chạy code, làm cho code của Jupyter non-static.
Ngoài ra, nó còn cho phép người dùng kiểm soát nguồn đầu vào của code và phản hồi lại trực tiếp trên trình duyệt.
Các mẫu code tài liệu
Jupyter giúp người dùng dễ dàng giải thích từng dòng code của họ với các phản hồi được đính kèm. Dù trong code đã có đầy đủ các chức năng nhưng người dùng vẫn có thể tăng thêm sự tương tác bằng các lời giải thích.
Hướng dẫn cài đặt Jupyter Notebook
Cài đặt Jupyter Notebook thông qua Anaconda
Nếu bạn là người mới bắt đầu, bạn nên sử dụng Anaconda.
Bước 1: Bạn hãy truy cập vào trang web của Anaconda . Ở cột Windows, chọn phiên bản phù hợp (32bit hoặc 64bit) rồi tải xuống.
Bước 2: Chương trình sẽ bắt đầu cài đặt, bạn hãy thực hiện theo chỉ dẫn trên màn hình để hoàn thành việc cài đặt. Việc cài đặt thường sẽ mất một vài phút, bạn có thể khởi chạy Jupyter Notebook sau khi quá trình cài đặt hoàn tất.
Bước 3: Sau khi cài đặt hoàn tất, bạn có thể khởi chạy Anaconda Navigator. Từ Navigator nhấp vào khởi chạy (Launch) trong tab Jupyter Notebook, sẽ được hiển thị bên dưới:
Hoặc bạn có thể sử dụng phím tắt để bắt đầu khởi chạy Jupyter Notebook trực tiếp, theo ví dụ như hình bên dưới:
Cài đặt Jupyter Notebook thông qua pip
Bước 1: Bạn hãy chạy thử lệnh sau để kiểm tra phiên bản Python đang được cài đặt trên máy tính của bạn.
Python -Version
Lưu ý
Bước 2: Tiếp theo, bạn hãy chạy lệnh này để kiểm tra phiên bản PIP đang được cài đặt trên máy tính của bạn.
pip3 -version
Lưu ý:
Bước 3: Để tránh vấn đề phụ thuộc và đảm bảo tất cả packages được cập nhật, hãy chạy lệnh sau.
pip3 install jupyter
Việc tải xuống và cài đặt sẽ mất vài phút để hoàn thành.
Hướng dẫn sử dụng Jupyter Notebook cơ bản
Chạy Jupyter Notebook trên Server
Sau khi cài đặt xong Jupyter Notebook trong các bước ở trên, chúng ta có thể bắt đầu chạy Jupyter bằng câu lệnh trong Terminal hoặc Command Prompt:
jupyter notebook
Sau đó nhập lệnh Jupyter Notebook và chương trình sẽ khởi tạo một máy chủ cục bộ tại LocalHost: 8888 (hoặc một cổng được chỉ định khác).
Ngay lập tức, trình duyệt sẽ bật ra với đường dẫn http://localhost:8888/tree như hình dưới đây:
Giao diện trên Jupyter Notebook
Bạn đang ở trong giao diện Jupyter Notebook và bạn có thể thấy tất cả các tệp có trong thư mục của mình. Nếu bạn muốn xem một thư mục, bạn hãy tìm nó trong danh sách các tệp và nhấp vào nó để mở thư mục đó lên.
Tạo một Notebook cơ bản
Trong giao diện trang chủ, để tạo một tài liệu Notebook mới click vào New và chọn loại tài liệu như Python, Text file, Folder…
Jupyter Notebook của bạn sẽ được mở trong tab mới.
Nếu bạn quay lại dashboard, bạn sẽ thấy file mới Untitled.ipynb và một số văn bản màu xanh lá cây cho điều đó cho bạn biết là Jupyter Notebook của bạn đang chạy.
Làm việc với Notebook
Nội dung tài liệu chứa các cell có nội dung là code hoặc markdown, đây là vùng chúng ta sẽ làm việc chính.
Một notebook bao gồm nhiều cell (ô). Khi tạo mới một notebook, bạn luôn được tạo sẵn một cell rỗng đầu tiên.
Có hai thuật ngữ mà bạn nên biết là Cell và Kernel:
- Kernel: là một “công cụ tính toán” thực thi code có trong Jupyter Notebook
- Cell: là chỗ chứa văn bản được hiển thị trong Jupyter Notebook hoặc code được thực hiện bởi Kernel của Jupyter Notebook.
Cell
Có hai loại ô chính mà các bạn cần biết:
- Code cell chứa code sẽ được thực hiện trong kernel. Khi code chạy, Jupyter Notebook sẽ hiển thị đầu ra bên dưới code cell đã tạo ra nó.
- Markdown cell chứa văn bản được định dạng bằng cách sử dụng Markdown và hiển thị đầu ra của nó tại chỗ mà Markdown cell chạy.
Cell đầu tiên trong Notebook mới luôn là code cell.
Chúng ta sẽ cùng thử nghiệm bằng một ví dụ cổ điển sau: Nhập print(‘Hello World!’) vào cell và nhấn nút Run trên thanh công cụ hoặc nhấn Ctrl + Enter.
Chúng ta sẽ có kết quả trông như thế này:
Khi chúng ta bắt đầu chạy cell, đầu ra của nó được hiển thị bên dưới và nhãn bên trái của nó sẽ thay đổi từ In [ ] thành In [1].
Đầu ra của code cell cũng tạo thành một phần tài liệu, đó là lý do tại sao bạn có thể thấy nó trong bài viết này. Bạn có thể thấy sự khác biệt giữa code cell và Markdown cell vì các code cell có nhãn (label) ở bên trái nhưng còn Markdown cell thì không có.
In trong nhãn chỉ đơn giản là viết tắt cho “Input“.
Chạy lại cell và nhãn lúc này sẽ đổi thành [2], vì bây giờ cell đã chạy lần thứ hai trên kernel, điều này sẽ làm mọi thứ trở nên rõ ràng và hữu ích hơn.
Từ thanh menu, nhấp vào Insert và chọn Insert Cell Below để tạo một code cell mới bên dưới:
Đầu ra của một cell có thể xuất phát từ bất kỳ dữ liệu văn bản nào được thực hiện trong cell, nó có thể là một biến, lệnh gọi hàm. Ví dụ:
Kernel
Khi có một code cell chạy, thì code đó sẽ được thực thi trong kernel. Trạng thái của kernel vẫn luôn tồn tại theo thời gian và giữa các cell – nó liên quan đến toàn bộ tài liệu.
Có một số tùy chọn cực kỳ hữu ích từ menu kernel:
- Khởi động lại (Restart): Khởi động lại kernel nó sẽ xóa tất cả các biến đã được xác định.
- Khởi động lại và xóa đầu ra (Restart và Clear Output): Sẽ xóa đầu ra được hiển thị bên dưới các code cell của bạn.
- Khởi động lại và chạy tất cả (Restart & Run All): Sẽ chạy lại tất cả các cell của bạn theo thứ tự từ đầu đến cuối.
Thêm nội dung vào Jupyter Notebook
Sử dụng Markdown
Markdown được biết đến là một ngôn ngữ đánh dấu. Bên cạnh đó, Markdown còn là một cách đơn giản để thêm định dạng – như tiêu đề, văn bản in đậm/in nghiêng và danh sách – vào văn bản thuần túy.
Thay vì dựa vào HTML hoặc các trình soạn thảo WYSIWYG, Markdown cho phép bạn định dạng văn bản và điều đó trực quan hơn nhiều so với HTML.
Heading
Sử dụng # trước tiêu đề để đánh dấu Heading, số kí tự # sẽ tương ứng với các cấp Heading khác nhau từ 1 đến 6.
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ bắt đầu hiển thị tiêu đề từ H1 đến H6.
# (Header 1, title) hoặc
<h1>Header 1,title<h1>
Heading 2
## (Header 2, tiêu đề chính) hoặc
<h2>Header 2, tiêu đề chính<h2>
Heading 3
### (Header 3, tiêu đề phụ) hoặc
<h3>Header 3, tiêu đề phụ<h3>
Heading 4
#### (Header 4) hoặc
<h4>Header 4<h4>
Heading 5
#### (Header 5) hoặc
<h5>Header 5<h5>
Heading 6
#### (Header 6) hoặc
<h6>Header 6<h6>
Bold và Italic
Sử dụng ** ở đầu (hoặc đầu và cuối câu) nếu muốn bôi đậm câu đó, tương ứng với thẻ <b> trong HTML.
- ** This is bold text**
- <b> This is bold text <b>
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ được hiển thị.
This is bold text
Sử dụng _ ở đầu hoặc * (hoặc đầu và cuối câu) nếu muốn in nghiêng câu đó. Ví dụ:
- _ This is italic text
- * This is italic text*
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ được hiển thị.
This is italic text
Danh sách
Trong văn bản chúng ta có thể thêm vào các danh sách giống như thẻ ol, ul trong HTML. Với danh sách có thứ tự ol trong Markdown chúng ta chỉ cần đánh số đằng trước danh sách. Ví dụ:
<ul><li>Fish</li><li>Eggs</li><li>Cheese</li></ul>
Còn với danh sách không thứ tự chúng ta chỉ cần để đằng trước dấu * hoặc dấu + hoặc dấu – Ví dụ:
– Fish- Eggs- Cheese
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ được hiển thị.
- Fish
- Eggs
- Cheese
Blockquotes
Nếu bạn muốn câu đó là quotes thì bạn sử dụng biểu tượng > , ở dạng văn bản thì sử dụng <blockquote> câu muốn thêm </blockquote>. Ví dụ:
>This is good
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ được hiển thị.
Chèn Code
Sử dụng ` hoặc “` ở đầu và cuối câu nếu muốn định dạng câu đó ở dạng code. Ví dụ:
`x=5`
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ được hiển thị:
x=5
Ví dụ:
“`Python
str = “This is block level code”
print(str)
“`
Hiển thị sau khi bấm nút Run.
Chèn Link
Sử dụng cú pháp []() để chèn link trong bài viết, ở đó nội dung trong [] sẽ là thẻ alt text, và nội dung trong () sẽ là đường link mà bạn muốn điều hướng đến. Ví dụ:
[Section title](division_ID)
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ được hiển thị.
Tạo bảng
Sử dụng theo mẫu dưới đây để tạo bảng
|Name|Address|Salary| |-|-|-| |Hanna|Brisbane|4000| |Adam|Sydney|5000|
Khi bạn nhấp vào Run trên thanh công cụ, cú pháp trên sẽ được hiển thị.
Lời kết
Hy vọng thông qua bài viết này của 200Lab, các bạn đã nắm được những điểm chính về Jupyter Notebook. Bên cạnh đó, 200Lab mong là bạn cũng đã cài đặt thành công và biết cách sử dụng công cụ đầy hữu ích này rồi.
Nếu bạn có định hướng trở thành Data Analyst chuyên nghiệp thì bạn có thể tham khảo bộ khóa học toàn diện chuyên nghiệp với combo 4 khóa học trong 1 bootcamp của 200Lab tại đây.
Ngoài ra, bạn có thể nhấn vào link này để tham gia vào nhóm và nhận thêm nhiều tài liệu hữu ích khác về Data nhé!