본문 바로가기
프로그래밍 언어(Programming Languages)/파이썬(Python)

[Jupyter Notebook 주피터 노트북] ✨잘 몰랐던 Jupyter Notebook의 10가지 기능! Part 1✨

by 데이터 벌집 2024. 11. 5.
반응형

💻 Jupyter Notebook은 데이터 과학자, 머신러닝 엔지니어, Python 개발자들에게 필수 도구입니다! 🌟 Jupyter는 코드, 텍스트, 시각화를 하나의 인터랙티브 환경에서 제공하는데요. 그런데, 여러분의 작업을 훨씬 더 쉽게 만들어 줄 잘 알려지지 않은 숨은 기능들이 있다는 사실, 알고 계셨나요? 🤔 오늘은 그중 5가지 숨겨진 보석 같은 기능들을 소개합니다! 💎

 

[Jupyter Notebook 주피터 노트북] ✨잘 몰랐던 Jupyter Notebook의 10가지 기능! Part 1✨

 

1️⃣ 매직 커맨드: 시간 절약 단축키 ⏳✨

%timeit sum(range(100000))

Jupyter Notebook에서 매직 커맨드는 % 또는 %%로 시작하며, 여러분이 자주 사용하는 기능들을 훨씬 더 효율적으로 실행할 수 있게 도와줍니다. 예를 들어 %timeit을 사용하면 특정 코드 블록의 실행 시간을 측정하여 성능을 최적화할 수 있습니다. %timeit sum(range(100000))를 실행해 보세요. 이렇게 하면 코드를 최적화하는 데 많은 시간을 절약할 수 있어, 코드 성능 개선을 위한 중요한 인사이트를 얻을 수 있습니다. 매직 커맨드를 사용하면 반복적인 작업이나 셸 명령어 실행, 메모리 관리 등 다양한 작업을 쉽게 처리할 수 있습니다.

 

2️⃣ 인터랙티브 위젯: 사용자 경험 향상 🎮

from ipywidgets import interact

def square(x):
    return x * x

interact(square, x=(0, 10));

IpyWidgets는 Jupyter Notebook에서 슬라이더, 버튼, 드롭다운 같은 인터랙티브 기능을 추가하여 사용자 경험을 향상시킬 수 있는 도구입니다. 예를 들어, 데이터 분석 중 파라미터를 조정할 때 슬라이더를 사용하여 실시간으로 변화를 관찰할 수 있습니다. 다음 코드를 사용해 보세요:

 

이렇게 하면 interact()를 통해 사용자 입력에 따라 출력이 동적으로 변화하는 인터랙티브 슬라이더가 생성됩니다. 이러한 위젯들은 특히 데이터 시각화나 파라미터 튜닝과 같은 작업에서 유용하며, 노트북을 대시보드처럼 사용할 수 있게 만들어줍니다.

 

3️⃣ 자동 재로딩: 최신 라이브러리 모듈 유지 🔄

%load_ext autoreload
%autoreload 2

개발 중인 Python 모듈을 자주 수정하고 있나요? %autoreload 매직 커맨드를 사용하면 수정된 내용을 매번 수동으로 다시 불러오지 않아도 됩니다. Jupyter Notebook에서 %load_ext autoreload%autoreload 2를 입력하면 코드 수정 사항이 즉시 반영되어 항상 최신 버전으로 실행됩니다. 이렇게 하면 커널을 재시작하거나 코드를 수동으로 다시 로드할 필요 없이, 코드 수정 후 바로 테스트할 수 있어 개발 속도가 크게 향상됩니다.

 

4️⃣ 노트북 내 문서 접근

print?

코드를 작성하다가 특정 함수나 객체에 대한 설명이 필요할 때, Jupyter Notebook을 떠나지 않고도 문서에 쉽게 접근할 수 있습니다. 함수나 객체 이름 뒤에 ???를 붙이면 해당 함수의 도큐멘트를 확인하거나, 심지어 소스 코드까지 볼 수 있습니다. 예를 들어, print?를 입력하면 print() 함수의 사용법에 대한 설명을 바로 확인할 수 있습니다. print??를 사용하면 해당 함수의 소스 코드까지 볼 수 있어, 함수가 어떻게 작동하는지 깊이 있게 이해할 수 있습니다. 이렇게 하면 인터넷을 검색할 필요 없이 필요한 정보를 즉시 얻을 수 있어 작업 효율이 높아집니다.

 

5️⃣ 접을 수 있는 제목: 깔끔한 조직화

pip install jupyter-contrib-nbextensions

 

긴 노트북을 작업하다 보면 많은 코드 블록과 마크다운 셀로 인해 노트북이 복잡해지고 가독성이 떨어질 수 있습니다. 이럴 때, nbextensions 패키지를 설치하면 접을 수 있는 제목 기능을 사용할 수 있습니다. pip install jupyter-contrib-nbextensions 명령어로 설치한 후, Jupyter 인터페이스에서 해당 확장을 활성화하면 됩니다. 이렇게 하면 각 섹션을 접고 펼칠 수 있어, 필요한 정보에만 집중할 수 있고 긴 노트북을 효율적으로 관리할 수 있습니다. 이는 특히 코드의 가독성을 높이고 복잡한 프로젝트를 정리하는 데 유용합니다.

Part 2도 기대해 주세요! 🚀✨ 여러분은 이미 이 기능들을 사용하고 계신가요? 댓글로 공유해 주세요! 👇😄

반응형