이 책은 외딴섬이 아닙니다. 이 책 하나만으로 데이터 과학을 위한 파이썬을 마스터할 수는 없습니다. 이 책에서 설명한 기술들을 여러분의 데이터에 적용하기 시작하면 곧 우리가 답하지 않은 질문들을 마주하게 될 것입니다. 이 섹션에서는 도움을 받는 몇 가지 팁과 학습을 이어가는 데 도움이 되는 방법들을 설명합니다.
막히는 부분이 있다면 구글 검색부터 시작하세요. 대개 검색어에 “Python”이나 “Python Data Science”(파이썬 생태계는 데이터 과학 그 너머까지 뻗어 있으므로)를 추가하는 것만으로도 관련 결과로 좁히기에 충분합니다. 구글은 특히 에러 메시지를 해결할 때 유용합니다. 에러 메시지가 떴는데 그 의미를 도저히 모르겠다면, 구글에 검색해 보세요! 과거에 다른 누군가도 같은 문제로 혼란스러워했을 가능성이 크며, 웹 어딘가에 도움말이 있을 것입니다.
구글에서 답을 찾지 못했다면, Stack Overflow를 이용해 보세요. 검색어에 [Python]을 포함하여 파이썬을 사용하는 질문과 답변으로 제한한 뒤, 기존의 답변이 있는지 먼저 살펴보는 시간을 가지세요.
최신 동향 파악하기
데이터 과학의 최신 동향을 계속 주시하는 것도 도움이 됩니다. 수많은 데이터 과학 뉴스레터들이 있으며, 트위터(Twitter)에서 (#pydata), (#datascience), (#python) 해시태그를 팔로우하여 파이썬 데이터 과학 커뮤니티의 흐름을 따라가는 것을 추천합니다.
reprex (재현 가능한 예제) 만들기
구글링으로도 유용한 정보를 찾지 못했다면, 최소한의 재현 가능한 예제인 reprex를 준비하는 것이 정말 좋은 생각입니다.
좋은 reprex는 다른 사람들이 여러분을 돕기 쉽게 만들어주며, 종종 이를 만드는 과정에서 스스로 문제를 해결하기도 합니다. reprex를 만드는 데는 두 가지 단계가 있습니다:
첫째, 코드를 재현 가능하게 만들어야 합니다. 이는 모든 것을 캡처해야 함을 의미합니다. 즉, 사용한 모든 패키지를 포함하고 필요한 모든 객체를 생성해야 합니다. 이를 확인하는 가장 쉬운 방법은 작업 중인 코드와 함께 watermark 패키지를 사용하는 것입니다:
코드 보기
import pandas as pdimport numpy as npimport watermark.watermark as watermarkprint(watermark())print(watermark(iversions=True, globals_=globals()))
Last updated: 2026-02-26T10:10:02.042597+00:00
Python implementation: CPython
Python version : 3.10.19
IPython version : 8.38.0
Compiler : GCC 14.3.0
OS : Linux
Release : 6.14.0-1017-azure
Machine : x86_64
Processor : x86_64
CPU cores : 4
Architecture: 64bit
numpy : 2.2.6
pandas : 2.3.3
watermark: 2.6.0
둘째, 예제를 최소화해야 합니다. 문제와 직접적으로 관련이 없는 모든 것을 걷어내세요. 이는 일반적으로 실제 겪고 있는 객체보다 훨씬 작고 단순한 파이썬 객체를 만들거나, 내장 데이터를 사용하는 것을 의미합니다.
상당한 노력이 필요해 보일 수 있습니다! 실제로 그럴 수도 있지만, 그 보상은 큽니다:
훌륭한 reprex를 만드는 과정에서 80% 확률로 문제의 원인을 발견하게 됩니다. 독립적이고 최소화된 예제를 작성하는 과정 자체가 스스로 질문에 답하게 해주는 일은 놀라울 정도로 자주 일어납니다.
나머지 20%의 경우에도 여러분은 문제의 본질을 다른 사람들이 쉽게 다뤄볼 수 있는 방식으로 캡처하게 됩니다. 이는 여러분이 도움을 받을 확률을 실질적으로 높여줍니다.
예제를 재현 가능하게 만들기 위해 포함해야 할 몇 가지 사항이 있습니다: 파이썬 환경, 필요한 패키지, 데이터, 그리고 코드입니다.
파이썬 환경: 사실상 파이썬 버전만 있으면 됩니다. 이는 watermark 패키지의 첫 번째 호출로 해결됩니다.
패키지 및 버전: 이들은 스크립트 최상단에서 로드되어야 예제에 어떤 패키지들이 필요한지 쉽게 알 수 있습니다. 위와 같은 설정으로 watermark를 사용하면 패키지 버전도 함께 출력됩니다. 이때 각 패키지의 최신 버전을 사용 중인지 확인해 보세요. 패키지를 설치하거나 업데이트한 이후에 해결된 버그를 여러분이 발견한 것일 수도 있습니다.
데이터: 다른 사람들은 여러분이 작업 중인 데이터를 쉽게 다운로드할 수 없으므로, 실제 데이터와 동일한 문제를 가진 소량의 데이터를 코드로 생성하는 것이 가장 좋습니다. numpy와 pandas를 사용하면 코드로 데이터를 생성하는 것이 꽤 쉽습니다. 여기 예제가 있습니다:
코드 보기
df = pd.DataFrame( data=np.reshape(range(36), (6, 6)), index=["a", "b", "c", "d", "e", "f"], columns=["col"+str(i) for i inrange(6)], dtype=float,)df["random_normal"] = np.random.normal(size=6)df
col0
col1
col2
col3
col4
col5
random_normal
a
0.0
1.0
2.0
3.0
4.0
5.0
-1.780684
b
6.0
7.0
8.0
9.0
10.0
11.0
-1.251114
c
12.0
13.0
14.0
15.0
16.0
17.0
0.411770
d
18.0
19.0
20.0
21.0
22.0
23.0
-0.017344
e
24.0
25.0
26.0
27.0
28.0
29.0
0.600024
f
30.0
31.0
32.0
33.0
34.0
35.0
-0.352620
코드: (위에서 언급한 패키지를 포함하여) 최소한의 재현 가능한 예제 코드를 복사해서 붙여넣으세요. 공백을 사용하고 변수 이름을 간결하면서도 유익하게 지었는지 확인하세요. 주석을 사용하여 문제가 어디에 있는지 표시하세요. 문제와 관련 없는 모든 것을 제거하기 위해 최선을 다하세요. 마지막으로, 코드가 짧을수록 이해하기 쉽고 고치기도 쉽습니다.
새로운 파이썬 세션을 시작하고 reprex를 복사해서 붙여넣어 실제로 재현 가능한 예제가 만들어졌는지 확인하는 것으로 마무리하세요.