현재 필자가 이 포스팅을 작성하고 있는 시점은 토요일 점심이 조금 지난 오후12:42분이다. 이 곳은 필자와 필자의 무에타이 관장님과 주짓수를 좋아하는 (관장님의) 친구분과 자주 오던 카페(라고 쓰고 아지트라고 읽는다.)에 왔다. 이전 포스팅 끝에서 예고한대로 오늘은 JUPYTER NOTEBOOK 을 조금 더 편리하게 사용하기 위한 세팅을 하기 위한 글을 작성하기 위해 왔다. 'Stay adorable(instagram: @cafe_stay_adorable)' 이라는 분위기 좋은 카페다. 필자는 '타노스 에이드' 라는 음료를 좋아한다. 조용하고 블로그 작성하기 좋다.
이미 알고 있는 닝겐들사람들도 있겠지만, 의외로 모를 것 같은 사람들을 위해서 작성한다.
필자도 몰랐다. 하지만, 데이터 사이언스 수강할 때, 강사님께서 알려주신 것들이다. 넘 편리해서 (그리고 기술블로그 쓸 게 없어서 어쩔 수 없이) 공유하고자 한다.
jupyter notebook에서 데이터 분석을 하려고 할 때, 우리가 늘 어김없이 하는 것이 있다. 'import' 이다.
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import scipy as sp
import statsmodels.api as sm
import sklearn as sk
...
이러한 작업들을 가장 처음에 할 것이다. 하지만, 매번 이렇게 입력하지 않도록 세팅이 가능하다. 지금부터 시작한다.
'00 사전준비'는 2021/8/10에 기존 내용을 보완하고자 추가하였다.
우선, Windows 10의 경우, git bash를 열도록 한다. 설치가 안 되어있다면, 구글에서 검색해서 다운을 받거나 다음 url 중 한 곳에서 다운받자
https://git-scm.com/downloads
https://gitforwindows.org/
맥 OS의 경우, Terminal 이나 iTerm2를 실행하면 된다. git bash나 Terminal이나 iTerm2나 지금부터의 과정은 똑같기 때문에, 편하게 따라오면 된다. 이제 git bash를 설치했다면, 실행해보자. 맥 유저들은 Terminal이나 iTerm2를 실행해보자.
윈도우에서는 Git Bash(Anaconda Prompt), 맥에서는Terminal(or iTerm2)를 열고 가상환경을 활성화하지 않은 상태에서 다음과 같이 입력한다.
pip show ipython
설치가 되어있다면, 다음처럼 나올 것이다. 그럼 그냥 냅두면 된다.
ANACONDA를 설치했다면, '00 사전준비'의 전체를 건너뛰어도 좋다.
만약 설치가 안 되어있다면, 다음과 같이 입력하여, ipython 을 설치한다. ANACONDA가 아닌, miniforge3를 설치한 경우라면, 충분히 설치가 안 되어 있을 수도 있다.
pip install ipython matplotlib-inline
혹은 이렇게만 입력하여 설치하여도 무관하다.
pip install ipython
다음 명령어를 실행하면, jupyter notebook 환경 세팅할 때 필요한, 파일들을 생성할 수 있다.
ipython profile create
필자의 경우, 이미 생성이 되어있다. 아마 처음 접하는 사람들이라면, 'ipython_config.py' 파일이 생성되었다는 문구를 볼 것이다.
아래 경로로 이동해보자.
cd ~/.ipython/profile_default/
그리고 ls 명령어로 어떤 파일들이 있는지 확인해보자.
ls
다음처럼 나올텐데, ipython_config.py 파일이 잘 생성된 것을 볼 수 있다.
윈도우에서는 Git Bash(Anaconda Prompt), 맥에서는Terminal(iTerm2)를 열고 가상환경을 활성화하지 않은 상태에서 시작한다.
실행을 했다면, 다음 명령어를 입력해서 경로를 이동해보자.
cd ~/.ipython/profile_default/startup/
먼저, 위 명령어를 입력해서 이동한다. 다음 스크린샷과 같을 것이다.
다음 명령어를 입력해서 해당경로에 뭐가 있는 지 살펴보자.
ls
아마 처음 이 경로를 이동한 사람이라면, 처음에 README.txt 파일 하나만 보일 것이다. 필자의 경우, 세팅을 한 번해서, 다른 파일도 함께 보인다. 필자의 스크린샷을 확인해보자.
이제 README 파일을 열어보자.
cat README
위 명령어를 입력하면, 다음 스크린샷처럼(필자 화면처럼) 될 것이다.
여기까지 잘 따라왔는가?
다음 명령어를 입력해서 00-first.py 파일을 열어보자.
vi 00-first.py
사실, 'vi' 라는 명령어는 (vi 명령어 이후의 파일명의) 파일이 없으면, 파일을 생성하고, 있으면 여는 역할을 한다. 입력하고 Enter를 눌러보자.
황량하게 어두운 검은색 화면에 모든 라인마다 가장 좌측에 "~"만 있을 것이다. 맞다. 이 화면으로 이동한 것이 맞다. 필자의 이전 글(세팅이 반이다 _Git_Bash)을 읽은 사람이라면, 당황하지 않을 것이지만, 처음 보는 이들을 위해 지금부터 어떻게 해야되는지 설명해주겠다.
키보드에서 영어 입력 상태로 놔둔 후, i 키를 눌러보자. 그러면 하단에 "--INSERT MODE--" 라는 문구가 보이게 될 것이다. 이렇게.
이제부터 이 화면에 입력이 가능해진다. 입력할 내용은 8번에서 다루겠다.
필자의 화면을 먼저 보여주자면,
이렇다. 여러분이 알아보기 쉽게 혹은 복붙을 원하는 이들을 위해 한 번 더 작성하겠다.
#basic
import time
import random
import math
#analyze
import numpy as np
import pandas as pd
#math
import scipy as sp
import statsmodels.api as sm
# web crawling
import requests
from bs4 import BeautifulSoup
# visualization
import matplotlib as mpl
import matplotlib.pylab as plb
import matplotlib.pyplot as plt
import sklearn as sk
import seaborn as sns
#fonts
mpl.rc('font', family='D2Coding ligature')
mpl.rcParams['axes.unicode_minus']=False
이제부터 간단한게 설명을 하자면, 위에서 말한 import 작업들을 여기서 미리하는 것이다. 그래서 jupyter notebook을 실행하게 되면, import 할 필요없이, np.array([[1, 2, 3, 4]])를 실행하면 (1,4)짜리 numpy array가 생긴다. import numpy as np 가 필요없이 말이다.
기본적으로 numpy(np), pandas(pd)를 비롯해, scipy(sp), matplotlib(mpl), seaborn(sns), scikit-learn(sk), statsmodels(sm) 등 데이터 분석, 머신 러닝에 필요한 라이브러리들은 기본적으로 다 import 가 되도록 해두었다. 다시 말하지만, jupyter notebook에서 import seaborn as sns 등의 명령어를 입력하지 않아도 된다. 이제부터.
matplotlib의 경우, 그래프를 그리는 라이브러리인데, 한글도 같이 나오게끔 하면 한글이 깨지며 font 에러가 난다. 그래서 필자의 경우, 위와 같이 폰트와 '-'부호에 대한 설정을 해두었다. ('-'부호 관련 에러도 있다고 하여서)
Window 10의 경우, 필자는 폰트를 '맑은 고딕(Malgun Gothic)'으로 해두었다. 다른 폰트를 원하면, 그 폰트로 설정해도 된다. 또한, D2Coding 서체도 윈도우에 설치가 가능하니, 설치하고 '맑은 고딕' 대신 'D2Coding' 서체로 설정할 수 있다.
#fonts
mpl.rc('font', family='Malgun Gothic')
mpl.rcParams['axes.unicode_minus']=False
위에서 필요없는 라이브러리가 있다면, 자신에게 필요한 것만 작성해도 상관이 없다.
오타 없이 빠짐없이 다 작성을 했다면, 'Esc'키를 누르고, 다음과 같이 입력하자.
:wq
다 작성했다면, 'Esc' 키를 누른 다음('--INSERT MODE--'가 사라질 것이다.), 위와 같이 :wq 를 입력한다. 저장하고 나간다는 뜻이다. 그리고 Enter 키를 누르자. 그럼 초기 화면으로 돌아올 것이다.
세팅이 다 끝났다. 이제 cd ~ 를 입력하고 초기 경로로 돌아가자
cd ~
그리고 원하는 경로나 위치에서 jupyter notebook을 실행시켜보자.
import numpy as np
import pandas as pd
import seaborn as sns
...
이런 import 없이 바로 np.array([1,2,3])를 해보자.
그리고 다른 여러가지도 해보자. 잘 실행될 것이다. 고생했다.
앞으로 이제 귀찮은 작업 하나가 생략되었다.
나중에 돌아와서 수정을 하고 싶다면 '4) cat README' 과정을 건너뛰고 동일하게 진행하면 된다.
아래 포스팅들을 참고하여 작성하였습니다.
https://steemit.com/kr/@radajin/jupyter-notebook-startup
https://ppjy0927.github.io/python/startup_file/