[SKALA] 데이터 분석 및 Python 기초 ③: Pandas, 분석 자동화
·
개발/SKALA 4기
Polars·DuckDB, 시각화, 기초 통계·ML과 프로젝트 구조화 [SKALA] 5주차 학습 정리 ②: 데이터 분석 및 Python 기초타입 힌트, Pydantic, 테스트 자동화와 동시성·병렬 처리 [SKALA] 5주차 학습 정리 ①: 데이터 분석 및 Python 기초데이터 분석 코드를 안정적으로 작성하려면 문법만 아는 것보다 다음 내용을 함께 이daniellee09.tistory.com앞선 글에서는 Python의 실행 구조와 자료구조, 함수, 파일 처리, 타입 힌트, Pydantic, 테스트 자동화와 비동기·병렬 처리까지 정리했다.이번에는 수집하고 검증한 데이터를 실제로 분석하는 단계로 넘어간다.Pandas로 데이터 탐색·정제→ Polars·DuckDB로 대용량 처리→ 그래프로 패턴 시각화→ 통..
[SKALA] 데이터 분석 및 Python 기초 ②
·
카테고리 없음
타입 힌트, Pydantic, 테스트 자동화와 동시성·병렬 처리 [SKALA] 5주차 학습 정리 ①: 데이터 분석 및 Python 기초데이터 분석 코드를 안정적으로 작성하려면 문법만 아는 것보다 다음 내용을 함께 이해해야 한다.Python 코드가 실행되는 과정→ 데이터를 담을 자료구조 선택→ 반복 작업을 간결하게 표현→ 기daniellee09.tistory.com 1편에서는 Python 코드가 실행되는 구조부터 자료구조, 컴프리헨션, 함수, 파일 처리와 예외 처리까지 정리했다.이번에는 작성한 코드를 단순히 실행하는 수준에서 벗어나 다음 단계로 넘어가 본다.타입 힌트로 함수의 입력과 출력 명시→ Pydantic으로 실제 데이터 검증→ pytest로 기능 테스트→ Ruff와 pre-commit으로 코드 품질..
[SKALA] 데이터 분석 및 Python 기초 ①
·
개발/SKALA 4기
데이터 분석 코드를 안정적으로 작성하려면 문법만 아는 것보다 다음 내용을 함께 이해해야 한다.Python 코드가 실행되는 과정→ 데이터를 담을 자료구조 선택→ 반복 작업을 간결하게 표현→ 기능을 함수로 분리→ 파일에서 데이터 읽기→ 예외와 로그로 실행 과정 관리 이번 1편에서는 Python 실행 구조부터 함수, 파일 처리, 데코레이터, 예외 처리와 로깅까지 살펴본다. 다음 2편에서는 타입 힌트와 데이터 모델링, 코드 품질과 테스트, 비동기·병렬 처리로 이어갈 예정이다.1. Python의 실행 구조와 개발 환경Python이 데이터 분석에 많이 사용되는 이유Python은 문법이 간결하고 대화형 실행 환경을 제공한다. 코드를 조금씩 실행하며 데이터를 확인할 수 있어 탐색적인 분석에 적합하다.또한 데이터 분석과..
[Coding Test][Python] 백준 2609번: 최대공약수와 최소공배수
·
개발/코테 준비
문제https://www.acmicpc.net/problem/2609 최대 공약수: 두 자연수의 공통된 약수 중 가장 큰 수최소 공배수: 두 자연수의 공통된 배수 중 가장 작은 수재귀함수n, m = map(int,input().split())# 최대 공약수def gcd(a, b): if (b == 0): return a else: return gcd(b, a%b)print(gcd(n,m))# 최소 공배수print(n*m//gcd(n,m)) 유클리드 호제법(Euclidean Algorithm)을 활용하면 쉽게 최대 공약수를 도출해낼 수 있다.최소 공배수는 두 자연수의 곱을 최대 공약수로 나누면 구할 수 있다. 유클리드 호제법(Euclidean Algorithm)큰 수를 작은 수로 나눈 나머지 ..
[Coding Test/Python] [Programmers] 소수 만들기
·
개발/코테 준비
문제 설명주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 소수가 되는 경우의 개수를 return 하도록 solution 함수를 완성해주세요. 제한 사항- nums에 들어있는 숫자의 개수는 3개 이상 50개 이하 입니다.- nums의 각 원소는 1 이상 1,000 이하의 자연수이며, 중복된 숫자가 들어있지 않습니다. 어떻게 풀어야 하지 고민을 하고 있었는데,python의 combinations 라이브러리를 사용하면 간단하게 풀 수 있는 문제였다. 코드def solution(nums): from itertools import combinations a..
[Django] Serializer란?
·
개발/Django
장고의 Serializer는 Django REST Framework에 존재하는 클래스이다.Serializer는 크게 다음의 두 가지 역할을 한다.모델 인스턴스를 python 기본 자료형 또는 JSON으로 변환 (직렬화)클라이언트로부터 받은 JSON이나 python 자료형 데이터를 검증(Validation)하고 모델 인스턴스로 변환하고 저장 (역직렬화)먼저 Serializer는 왜 필요할까?1. Serializer가 필요한 이유웹 API에서 데이터는 JSON 형태로 주고받는다.Django의 QuearySet이나 모델 인스턴스는 바로 JSON으로 직렬화(serialize)되지 않는다.반대로, 클라이언트가 보낸 JSON을 곧바로 모델 인스턴스에 넣을 수도 없다.따라서 Serializer를 통해 "모델 ↔ JS..