[파이썬데이터분석] IPython, Jupyter Notebook

imacusirius·2021년 11월 6일
0

파이썬데이터분석

목록 보기
3/12
  • 이 책은 대용량 데이터를 다루기 위한 테이블 기반의 분석과 데이터 준비 도구에 초점을 두고 있음
  • 도구를 사용하려면 데이터를 처리하기 쉽도록 구조화된 형태로 다듬어야 함

파이썬 인터프리터

  • 파이썬은 인터프리터 언어
  • 파이썬 인터프리터 -> 한 번에 하나의 명령어만 실행
  • 사용법
$ python
>>> a = 5
>>> print(a)
5
# 돌아갈 때는 exit() 또는 Ctrl+D
  • 저장된 파일 터미널에서 실행하기
# hello_world.py
print('Hello World')
$ python hello_world.py
Hello World
  • 데이터 분석이나 과학 계산을 주로 다루는 파이썬 개발자들은 향상된 대화형 파이썬 인터프리터인 IPython 또는 Jupyter Notebook을 사용함
$ ipython

In [1]: %run hello_world.py
Hello world

In [2]:

IPython은 %run 명령어 사용 시, 지정된 파일의 코드를 같은 프로세스 안에서 실행하고, 끝났을 때 그 결과를 인터랙티브하게 탐색할 수 있게 해 줌

IPython - 주피터 노트북

tab을 통한 자동완성 기능

  • 표준 파이썬 셸에 비해 가장 두드러진 개선점
  • 셸에서 입력하는 동안 탭을 누르면 네임스페이스에서 그 시점까지 입력한 내용과 맞아떨어지는 변수를 자동으로 찾아 줌
In [1]: an_choi = 5

In [2]: an_yj = 14

In [3]: an<Tab>
an_choi   and    an_yj   any
  • 객체의 메서드나 속성 뒤에 마침표 입력 뒤 자동완성 기능 활용
In [3]: b = [1,2,3]

In [4]: b.<Tab>
b.append  b.count   b.insert  b.reverse
b.clear   b.extend  b.pop     b.sort
b.copy    b.index   b.remove
  • 탭 자동완성은 네임스페이스, 객체, 모듈 속성뿐만 아니라 파일 경로 역시 찾아 줌

자기관찰 (Introspection)

  • 변수 이름 앞이나 뒤에 ? 기호를 붙이면 객체에 대한 일반 정보 출력
In [8]: b = [1,2,3]

In [9]: b?
Type:        list
String form: [1,2,3]
Length:      3
Docstring:
list() -> new empty list
list(iterable) -> new list initialized from iterable's items

In [10]: print?
Docstring:
print(value, ..., sep='\n', file=sys.stdout, flush=False)

Prints the values ...
...
  • 객체가 함수거나 인스턴스 메서드라면 정의되어 있는 문서(docstring)를 출력해 줌
  • ??를 사용하면 가능한 경우 함수의 소스 코드도 보여 줌

%run 명령어

  • IPython 세션 안에서 파이썬 프로그램 파일을 불러와 실행할 수 있음
  • 스크립트 파일은 빈 네임스페이스에서 실행되므로, 명령행에서 python ~ 명령을 실행한 것과 동일하게 동작
  • 주피터 노트북에서는 스크립트 파일을 코드 셀로 불러오는 %load 매직함수를 사용할 수도 있음

실행 중인 코드 중지

  • %run으로 스크립트 실행 중이거나 오랜 실행 시간이 필요한 코드가 실행되는 중간에 Ctrl+C를 누르면 KeyboardInterrupt 예외가 발생해 프로그램이 멈춘다

클립보드에 있는 코드 실행

  • %paste, %cpaste 매직함수 사용
  • %paste는 클립보드에 있는 텍스트를 단일 블록으로 실행
  • %cpaste는 코드를 붙여 넣을 때 특수한 프롬프트 제공
    • 실행 전에 코드 마음껏 붙여 넣기 가능, 실수로 잘못된 코드 붙여 넣었을 경우 Ctrl+C로 빠져나오기 가능

키보드 단축키

  • Ctrl+P or ↑: 명령어 히스토리 역순 검색
  • Ctrl+N or ↓: 명령어 히스토리 최근 순으로 검색
  • Ctrl+R: readline 형식의 히스토리 검색(부분 매칭)
  • Ctrl+Shift+V: 클립보드에서 텍스트 붙여 넣기
  • Ctrl+C: 현재 실행 중인 코드 중단
  • Ctrl+A: 커서를 줄의 처음으로 이동
  • Ctrl+E: 커서를 줄의 끝으로 이동
  • Ctrl+K: 커서 놓인 곳부터 줄 끝까지 텍스트 삭제
  • Ctrl+U: 현재 입력된 모든 텍스트 지우기
  • Ctrl+F: 커서 앞으로 한 글자씩 이동
  • Ctrl+B: 커서를 뒤로 한 글자씩 이동
  • Ctrl+L: 화면 지우기

매직 명령어

  • 앞에 % 기호 붙이는 형식
  • 매직함수와 같은 이름의 변수가 선언되어 있지 않다면 % 기호 없이도 매직함수 사용 가능
    • 오토매직, %automagic 이용해 기능 켜고 끄기
  • %quickref나 %magic 명령 이용해 사용 가능한 특수 명령어 살펴볼 수 있음

0개의 댓글