NumPy 실습 챌린지

본 과정은 NumPy 를 위한 다양한 챌린지를 포함하고 있으며, 각 챌린지는 상세한 지침과 솔루션을 갖춘 작은 NumPy 프로젝트입니다. 이러한 챌린지를 해결함으로써 NumPy 기술을 연습하고, 문제 해결 능력을 향상시키며, 깔끔하고 효율적인 코드를 작성하는 방법을 배울 수 있습니다.

Python데이터 과학

💡 이 튜토리얼은 영어로 번역되었습니다. 원본을 보려면 영어로 전환

소개

15개의 독립적인 프로그래밍 도전 과제로 NumPy 실력을 점검하고 확장합니다. 입문형 설명을 따라가는 대신 요구 사항, 예제, 시작 파일을 바탕으로 배열 조작, 통계, 확률 과정, 선형대수, 문자열, 이진 데이터, 신호 분석 함수와 프로그램을 구현합니다.

3개의 Beginner와 12개의 Intermediate 도전 과제로 구성됩니다. 개별 시나리오는 고객 통계 작성, 행렬 문제 해결, 확률 시스템 시뮬레이션, FFT 합성 신호 분석처럼 관련된 여러 단계로 진행되기도 합니다. 따라서 NumPy 첫 학습보다 집중 연습과 자기 평가에 더 적합합니다.

학습 내용

  • 요소별 수학 함수를 구현하고 배열의 수치 데이터 타입 변환하기
  • 다차원 거래 데이터를 집계하고 기술 통계와 상관관계 계산하기
  • 인덱싱, 마스킹, 형태 변경, 연결, 쌓기, 분할 조합하기
  • 주사위, 몬테카를로 추정, 표본 추출, 그래프, 마르코프 체인의 무작위 데이터 생성하기
  • 곱, 역행렬, 행렬식, SVD, 고유값, 랭크, 선형 방정식 문제 해결하기
  • 다차원 배열을 정렬하고 값과 좌표 검색하기
  • 인코딩 데이터에 벡터화 문자열 함수와 비트 연산 적용하기
  • FFT와 einsum으로 주파수 분석, 행렬 표현, 텐서 축약 수행하기

추천 대상

NumPy 기초를 이미 알고 다양한 코딩 문제로 이해의 빈틈을 찾고 싶은 학습자에게 적합합니다. 고급 수치 계산 전 독립 연습에 유용하며, 단계별 설명이 필요하다면 먼저 배열 생성, 인덱싱, 형태, 함수에 익숙해져야 합니다.

선수 지식: Python 함수를 작성하고 NumPy 배열을 생성, 인덱싱, 계산할 수 있어야 합니다. 후반부는 대부분 Intermediate이므로 기초 통계와 선형대수 지식이 도움이 됩니다.

학습 환경: 각 도전 과제는 Ubuntu 22.04 WebIDE, 시작 파일, 과제 검증을 제공합니다. 브라우저에서 Python 코드를 실행하며 FFT 과제는 Matplotlib로 시간·주파수 영역 그래프도 만듭니다. 외부 서비스 계정은 사용하지 않습니다.

자주 묻는 질문

안내형 실습인가요, 평가형 도전 과제인가요?

15개의 독립 과제입니다. 요구 사항과 예제는 제공되지만 완성 해설을 따라가는 대신 직접 구현하고 제공된 검사를 사용해야 합니다.

NumPy를 전혀 모르는 초보자에게 적합한가요?

첫 과정으로는 적합하지 않습니다. 카탈로그 수준은 Beginner이지만 12개 과제가 Intermediate이며 SVD, FFT, 비트 조작, 텐서 축약을 포함합니다. NumPy 사전 연습을 강력히 권장합니다.

순서대로 완료해야 하나요?

15개 시나리오는 독립적이므로 주제별로 선택할 수 있습니다. 다단계 과제 안에서는 뒤의 함수가 앞의 결과를 활용할 수 있으므로 순서대로 진행하세요.

시각화 내용은 얼마나 있나요?

Matplotlib가 필요한 것은 FFT 과제뿐이며 파형, 파워 스펙트럼, 주파수 피크를 그립니다. 나머지는 수치, 문자열, 이진 연산 구현과 검증이 중심입니다.

강사

labby
Labby
Labby is the LabEx teacher.