8개의 안내형 실습을 통해 배열을 다루는 방법뿐 아니라 형태, 데이터 타입, 메모리 동작이 중요한 이유까지 배웁니다. 작은 Python 프로그램을 작성하고 실행하면서 배열 생성과 인덱싱에서 파일 입력, 브로드캐스팅, 구조화 데이터, 유니버설 함수로 발전합니다.
하나의 큰 프로젝트 대신 구체적인 실험을 사용합니다. 결측값이 있는 CSV를 불러오고, 뷰와 독립 복사본을 비교하며, 호환·비호환 형태를 시험하고, NumPy의 요소별 연산을 관찰합니다. 이를 통해 이후 수치 및 데이터 작업에 필요한 확실한 배열 이해를 쌓습니다.
학습 내용
- Python 시퀀스, NumPy 생성 함수, 데이터 파일에서 다차원 배열 생성하기
- 슬라이싱, 정수 인덱싱, 불리언 마스크로 배열 선택 및 수정하기
genfromtxt로 헤더, 구분자, 열, 결측값을 처리하며 표 데이터 가져오기dtype과astype으로 NumPy 데이터 타입 확인, 지정, 변환하기- 호환되는 형태에 브로드캐스팅 규칙을 적용하고 불일치 식별하기
- 뷰와 복사본을 구분하고
base로 메모리 공유 확인하기 - 구조화 배열과 레코드 배열에서 이름 있는 필드 정의 및 접근하기
- 유니버설 함수로 요소별 연산, 축약, 출력 타입, 사용자 동작 처리하기
추천 대상
NumPy를 처음 배우는 Python 학습자와 배열 동작의 명확한 기초가 필요한 데이터 분야 입문자에게 적합합니다. 기본 Python 코드는 작성할 수 있지만 대규모 문제 모음이나 NumPy 기반 라이브러리로 넘어가기 전에 안내형 설명을 원하는 경우 특히 유용합니다.
선수 지식: 리스트, 변수, 조건문, 스크립트 실행을 포함한 Python 기초를 권장합니다. NumPy 경험은 필요하지 않습니다.
학습 환경: 각 실습은 Ubuntu 22.04 WebIDE, 시작용 Python 파일, 터미널, 필요한 CSV 데이터를 제공합니다. 브라우저에서 일반 .py 파일을 편집하고 실행하므로 로컬 설정이 필요하지 않습니다.
자주 묻는 질문
안내형 과정인가요, 주로 도전 문제로 구성되나요?
설명, 실행 가능한 예제, 단계별 코딩 과제가 있는 8개의 안내형 실습으로 구성됩니다. 별도의 도전 실습은 없습니다.
복사본과 뷰를 배우는 이유는 무엇인가요?
NumPy 슬라이스는 원본 배열과 메모리를 공유할 수 있지만 고급 인덱싱은 보통 복사본을 만듭니다. 이 차이를 알면 수정이 원본 데이터에도 영향을 주는지 예측할 수 있습니다.
파일에서 불러온 데이터도 다루나요?
네. 간단한 CSV에는 loadtxt를 사용하고, genfromtxt로 헤더 건너뛰기, 열 선택, 타입 지정, 결측값 대체를 연습합니다.
Pandas, 머신 러닝, 시각화도 배우나요?
아니요. NumPy 배열과 그 동작에 집중합니다. 해당 주제의 기반은 제공하지만 DataFrame, 예측 모델, 그래프 작성 워크플로는 다루지 않습니다.





