프로그래밍을 할 땐 비법과 요령이 필요합니다. 작은 요령 하나가 시간을 아껴줄 뿐 아니라 결과물의 질도 높입니다. 단축키나 기능추가(add-on) 같은 요소는 별 것 아니게 느껴지지만 생산성을 끌어올리는 데 확실히 도움이 됩니다. 그래서 이번 포스팅에서는 제가 가장 좋아하는 파이썬 데이터 분석 비법과 요령을 공유하려 합니다. 대부분 널리 알려진 것이지만, 몇 가지는 낯설 수 있습니다. 그래도 한 번 접해보시면 이후 데이터 분석 프로젝트에서도 즐겨 사용하게 되실 거라 확신합니다.
1. Jupyter Notebook 셀에 색상 넣기
Jupyter Notebook의 얼럿/메모 상자를 사용하여 중요하거나 눈에 띄어야 하는 항목을 강조할 수 있습니다. 메모의 색상은 지정된 경고 유형에 따라 다릅니다. 강조 표시해야 하는 셀에 다음 코드 중 일부 또는 전부를 추가하기만 하면 됩니다.
푸른색 얼럿 박스 : 정보
<div class="alert alert-block alert-info">
<b>Tip:</b> Use blue boxes (alert-info) for tips and notes.
If it’s a note, you don’t have to include the word “Note”.
</div>
노란색 얼럿 박스 : 경고
<div class="alert alert-block alert-warning">
<b>Example:</b> Yellow Boxes are generally used to include additional examples or mathematical formulas.
</div>
녹색 얼럿 박스 : 성공
<div class="alert alert-block alert-success">
Use green box only when necessary like to display links to related content.
</div>
빨간 얼럿 박스 : 위험
<div class="alert alert-block alert-danger">
It is good to avoid red boxes but can be used to alert users to not delete some important part of code etc.
</div>
2. 셀에 있는 모든 결과물(outputs) 화면에 출력(Print)하기
아래와 같은 코드가 작성된 Jupyter Noebook 셀이 있다고 생각해봅시다.
In [1]: 10+5
11+6
Out [1]: 17
마지막 결과물만 출력되는 것이 셀의 일반적인 속성이며 나머지 출력에는 print() 함수를 추가해야 합니다. 그.러.나. 노트북 상단에 아래의 코드뭉치를 추가하기만 하면 모든 결과물을 인쇄할 수 있습니다.
from IPython.core.interactiveshell import InteractiveShell InteractiveShell.ast_node_interactivity = "all"
보세요, 모든 결과물이 하나하나 출력되는 것을 볼 수 있습니다.
In [1]: 10+5
11+6
12+7
Out [1]: 15
Out [1]: 17
Out [1]: 19
본래의 설정으로 되돌리기 위해서는:
InteractiveShell.ast_node_interactivity = "last_expr"
3. 콘솔 창에서 "-i" 옵션을 적용해 파이썬 스크립트 실행
명령줄에서 python 스크립트를 실행하는 전형적인 방법은 python hello.py입니다. 그러나 동일한 스크립트에 -i를 추가(예: python -i hello.py)해서 돌리면 더 많은 이점이 있습니다. 한 번 알아보지요.
- 첫째, 프로그램의 끝에 도달해도 파이썬이 인터프리터를 종료하지 않습니다. 따라서 프로그램에서 정의된 변수의 값이나 함수가 올바른지 등을 확인할 수 있습니다.
- 두 번째, 인터프리터가 여전히 열려 있기 때문에 손쉽게 디버깅툴(python debugger)을 실행할 수 있습니다:
import pdb
pdb.pm()
위 스크립트를 실행하면 예외가 발생한 위치로 바로 이동하기 때문에 우리는 해당 코드에 대해 바로 조치할 수 있습니다.
본 해법에 대한 자세한 내용은 원본문서를 참고해보세요.
4. 원하는 만큼의 코드 뭉치(snippet) 한 번에 주석 처리하는 단축키
Ctrl/Cmd + / 을 누르면 셀 내의 특정 라인을 자동으로 주석 처리 합니다. 단축키를 다시 한 번 누르면 해당 라인은 주석 처리가 해지되고 다시 유효한 코드가 됩니다.
5. 실수로 삭제한 셀 혹은 셀의 내용 복구(Undo)
Jupyter Notebook에서 실수로 셀을 삭제한 적이 있으실 겁니다. 그럴 때 방금 수행한 '삭제'를 되돌릴 수 있는 단축키가 있습니다.
- 셀의 내용을 삭제한 경우라면 CTRL/CMD+Z를 눌러 쉽게 복구할 수 있습니다.
- 셀 자체를 삭제해 복구해야 하는 경우라면 ESC+Z 또는 EDIT > Undo Delete Cells를 누르시면 됩니다.
지금까지 제가 파이썬, 특히 주피터노트북으로 데이터 분석을 수행할 때 즐겨쓰는 요령과 비법들을 적어봤습니다. 스택오버플로우를 들락날락하는 빈도가 늘어날수록 이런 노하우를 정리하고, 숙지하는 작업이 필요하다는 생각이 듭니다. 앞으로도 내 기억에서 놓치고 싶지 않은 스크립트나 코드뭉치들은 블로그에 계속 기록해둘 예정입니다.
'Programming > Code Archive' 카테고리의 다른 글
[파이썬Python-웹 스크래핑] 구글 플레이 스토어 앱 리뷰 크롤링 (0) | 2022.02.02 |
---|---|
[파이썬Python-웹 스크래핑] 채용공고 내 단어 출현빈도 분석하고 시각화 feat.자연어처리 (1) | 2022.01.01 |
[파이썬Python] 데이터 분석을 빠르고 수월하게 해주는 치트키 5개_1탄 (0) | 2021.09.13 |
[파이썬Python] 코딩 속도를 높여줄 필수 코드(code snippet) 20개 (3) | 2021.09.11 |
[파이썬Python] 초심자가 알아야 할 네 가지 유용한 기능 (0) | 2021.09.10 |
댓글