카테고리 없음

TIL_20250612 (목) 파이썬 함수 정리

elya0919 2025. 6. 12. 20:21
list comprehension

- 기본 구조 = [표현식 for 변수 in 반복가능한 객체]
->> 반복 가능한 객체에서 값을 하나씩 꺼내 표현식에 적용한 결과를 리스트로 만든다.

- 기본 예시 = [i * 2 for i in range(5)]
->> range(5)의 숫자들을 하나씩 i로 꺼내서 i * 2 한 값을 리스트로 만든다.

- if 문과 함께 = [i for i in range(10) if i % 2 == 0]
->> range(10)의 숫자 중에서, i가 2로 나눴을 때 나머지가 0일 때만 리스트에 담는다.(짝수 구하기)

- if else문 = ["짝수" if i % 2 == 0 else "홀수" for i in range(5)]
->> else를 사용하면 if else가 for문 앞에 와야함  ==> Elif는 못씀

- 중첩 for문 가능 = [i * j for i in range(1,4) for j in range(1,4)]
->> i가 1일때 j의 1,2,3을 곱해서 1,2,3이 나오고 //  i가 2일때 j값이 1,2,3을 곱해서 2,4,6 이 나온다
 

*** 기본적으로 대괄호 []로 감싸져있는데 이건 list()라고 보면 됌 ***

***
딕셔너리 가능 ! []를 -> {} 바꾸면 됌 !
딕셔너리는 키, 값{i : i**2 for~~~~}으로 해야 함
튜플은 맨 앞에 결과 값 담기는 부분을 튜플로 감싸면 튜플 리스트 가능 (튜플 자체는 못 만듬)
*** 
*** 반복, 조건, 가공을 통해 리스트를 만드는 문법이다 ***

 

lambda 

- 기본 구조 = lambda 매개변수 : 매개변수에 수행할 조건(표현식)

- 기본 예시 = lambda x : x+1 (매개변수 x를 설정 -> x+1을 해라)

- if문 들어간 예시= lambda x : "짝수(참일때 값)" if x % 2 == 0 else "odd(거짓일때 값)"


lambda는 한 줄 안에서  “연산식” or “삼항 if문” 까지만 가능하다!!
간단한 조건일 때는 lambda를 많이 씀 

 

map

기본 구조 = map(함수, 객체)
ex = upper_list = list(map(lambda x: x.매서드(),객체))

 

외부 라이브러리 사용

import 문 사용해서 불러옴

import numpy as np
numpy = 고성능 과학연산

ndarray = 다차원 배열

import pandas as pd
pandas = 데이터 조작 및 분석 -> 표 형태 유용 (데이터프레임)

시리즈 = 1차원 데이터를 담는거
인덱스 - 값 구조로 세로로 쭉 나옴

인덱스 레이블 마지막 값 포함 됌 -> 안되는 경우는 ? 

장점 인덱싱으로 데이터 빠르게 찾기 가능, 접근 조작도 가능 , 다른 도구와 쉽게 통합가능

 

모듈 = 파이썬 코드를 담고있는 파일 하나 .py 

패키지 = 여러 모듈 묶어 놓는거 (numpy,pandas의 구조적 측면)

라이브러리 = 기능적 측면 (numpy,pandas의 기능적 측면)

 

데이터 프레임 = 열과 행의 개념 

열 = 데이터 속성

행 = 값

 

시리즈는 컬럼이다~~~

시리즈가 모이면 데이터 프레임~

 

head => sql에서 limit 개념

describe => 데이터 통계 정보 요약 (기본적으로 숫자열 데이터만 요약함)

info -> 유형 및 누락 값(결측치)