Python 32

[Pandas] 데이터 접근 (at, loc)

1.  at  사용 (레이블 기반 접근)특정 행과 열을 지정하여 개별 값을 빠르게 접근단일 값만 조회 가능DataFrame.at[row_label, column_label]import pandas as pddf = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})print(df.at[1, 'B']) # 1행 'B' 열의 값 반환# 출력# 52.  iat  사용 (정수 기반 위치 접근)정수 기반 위치를 사용해 빠르게 값에 접근단일 값만 조회 가능DataFrame.iat[row_index, column_index]print(df.iat[1,1]) # 1번째 행, 1번째 열 의 값 반환# 출력# 5 3.   loc  사용 (레이블 기반 접근)행과 열의 레이블(labe..

Python/Pandas 2024.12.16

[Pandas] 데이터 미리보기 및 기본정보 확인

데이터 미리보기(1)  head() df.head(n)상위 n개의 행을 출력n은 생략가능하며 기본값은 5(2)  tail() df.tail(n)하위 n 개의 행을 출력n은 생략가능하며 기본값은 5(3)  sample() df.sample()기본적으로 1개의 행을 무작위로 반환데이터 구조 및 기본 정보 확인(1)  info() df.info()데이터프레임의 구조적 정보를 요약해서 출력합니다.행/열 개수각 열의 데이터 타입결측값 개수메모리 사용량 등 출력예시RangeIndex: 3 entries, 0 to 2Data columns (total 2 columns): # Column Non-Null Count Dtype --- ------ -------------- ----- 0 A ..

Python/Pandas 2024.12.15

[Pandas] inplace 옵션

inplace 란? Pandas 의 DataFrame 나 Series 객체를 조작할때, 원본 데이터를 바로 수정할지 여부를 결정하는 옵션이다 기본적으로 판다스의 함수들은 원본 데이터를 변경하지 않고 새로운 객체를 반환 한다.  inplace=True 를 설정하면 원본 데이터가 직접 변경된다.사용예시 (1)  inplace=False (기본값)원본 데이터는 변경되지 않으며, 새로운 데이터프레임이 반환된다.# 데이터프레임 복사df = pd.DataFrame({'A': [1, 2, 3], 'B': [4, 5, 6]})# drop으로 열 삭제 (inplace=False, 기본값)new_df = df.drop('A', axis=1) # A 열을 삭제한 새로운 데이터프레임 반환print(new_df) # A 열..

Python/Pandas 2024.12.15

[Pandas] 시리즈, 데이터프레임 ( Series, DataFrame )

Pandas 의 Series 와 DataFarme 은 판다스 라이브러리의 핵심 데이터 구조입니다.이 두가지는 데이터를 효율적으로 저장하고 처리하기 위해 설계되었습니다.Series ( 시리즈 )Series 는 1차원 데이터 구조로, 배열(array)처럼 동작하지만, 인덱스(index)를 가질 수 있는것이 특징데이터와 인덱스로 구성되어 있으며, Numpy 배열과 Python 딕셔너리의 장점을 결합한 구조엑셀의 한 열( column )인덱스(index) 와 데이터값(value) 이 쌍으로 구성 구조index value0 101 202 30 생성import pandas as pd# 리스트로 시리즈 생성s = pd.Series([10, 20, 30])# 딕셔너리로 시리즈..

Python/Pandas 2024.12.15

[Python] 함수 심화 - 고차함수

함수는 크게보면 4가지로 구분할 수 있다.매개변수 있고, 없고리턴값 있고, 없고이경우인데 예시를 보며 살펴보자1. 매개변수와 반환값이 없는 함수이 함수는 매개변수를 받지 않으며, 값을 반환하지도 않습니다.def 안녕(): print("안녕하세요!")안녕() # 출력: 안녕하세요!2. 매개변수는 있지만 반환값이 없는 함수이 함수는 외부로 값을 반환하지 않지만, 입력된 매개변수로 어떤 작업을 수행합니다.def 더하기(a, b): print(a + b)더하기(3, 5) # 출력: 83. 매개변수가 없고 반환값이 있는 함수이 함수는 매개변수는 받지 않지만, 계산이나 작업 후 결과값을 반환합니다.def 랜덤_수(): import random return random.randint(1, 1..

[Pandas] Pandas 기본

1. 데이터 구조Series - 1차원 배열DataFrame - 행과 열로 구성된 2차원 데이터 구조 (표 형태)더보기Series1차원 배열엑셀의 한 열(column) 과 유사인덱스와(index) 와 데이터 값(Value) 이 쌍으로 구성import pandas as pd# Series 생성s = pd.Series([10, 20, 30], index=['a', 'b', 'c'])print(s)# 인덱스로 접근print(s['a']) # 출력: 10 DataFrame2차원의 표 형태 데이터 구조엑셀의 전체 시트(sheet) 와 유사각 열(column)은 Series# DataFrame 생성data = {'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 30, 35]}..

Python/Pandas 2024.12.07

[Pandas] Pandas란?

PandasPandas 는 파이썬에서 데이터를 다룰 때 매우 유용한 라이브러리로,  주로 데이터 분석 및 조작 작업을 효율적으로 수행하기 위해 사용한다. 데이터를 표(테이블) 형식으로 다루기 쉽게 만들어준다.주요 특징 데이터 구조 제공:Series: 1차원 배열과 유사한 데이터 구조로, 인덱스를 가질 수 있습니다.DataFrame: 2차원 테이블 형태의 데이터 구조로, 엑셀 시트와 비슷하며 행과 열로 구성됩니다.Panel (deprecated): 3차원 데이터를 다룰 때 사용되었으나, 현재는 더 이상 사용되지 않으며 다차원 데이터는   xarray  등 다른 라이브러리를 권장합니다.다양한 데이터 형식 지원:CSV, Excel, SQL, JSON, HTML 등 다양한 파일 포맷의 데이터를 쉽게 읽고 저장할..

Python/Pandas 2024.12.07

[Numpy] Numpy 의 주요함수

1. 배열 생성 함수 np.array()  : 파이썬 리스트나 튜플을 배열로 변환  np.zeros()  : 모든 요소가 0 인 배열을 생성 np.ones()  : 모든 요소가 1인 배열을 생성 np.arange()  : 등간격의 숫자를 생성np.linspace()  : 지정한 구간을 균등하게 나눈 값을 생성더보기 np.array() 파이썬 리스트나 튜플을 배열로 변환한다.import numpy as npa = np.array([1, 2, 3])print(a) # [1 2 3]   np.zeros() 모든 요소가 0 인 배열을 생성한다.zeros_array = np.zeros((2, 3)) # 2x3 크기의 0으로 채워진 배열print(zeros_array)# [[0. 0. 0.]# [0. 0. 0..

Python/Numpy 2024.12.04

[Numpy] Numpy란?

Numpy 란? Numpy (Numerical Python)  는 수치 연산을 효율적으로 수행할 수 있도록 설계된 라이브러리과학 계산데이터 분석머신러닝등위와같은 상황에서 강점을 가지고 있다.Numpy 의 주요 기능1. 다차원 배열 객체 (ndarray)넘파이의 핵심 데이터 구조는  ndarray  이다. 이는 다차원 배열을 효율적으로 저장하고 처리할 수 있도록 설계됨리스트보다 빠르다.배열 간 연산에 최적화 되어있다. 2. 벡터화 연산반복문 없이 배열 단위로 연산을 수행할 수 있다.ex)  a + b 는 배열  a  와  b  의 요소별 덧셈을 수행 3. 수학적 함수 지원통계, 선형 대수, 푸리에 변환, 난수 생성 등 다양한 수학 함수가 내장되어 있다. 4. 브로드캐스팅배열 크기가 다를 때 자동으로 연산을..

Python/Numpy 2024.12.04

[Python] 데코레이터( @ ), 컨텍스트 매니저 ( with )

데코레이터(Decorator)  @ 데코레이터는 다른 함수(또는 메서드) 를 수정하거나 확장하는 데 사용되는 함수기존 코드를 변경하지 않고, 추가적인 기능을 쉽게 부여할 수 있게 해줌 작동방식데코레이터는 또 다른 함수를 매개변수로 받아들이고, 새로운 함수를 반환합니다. @  기호를 사용하여 데코레이터를 함수나 클래스에 적용할 수 있습니다.# 기본 데코레이터 정의def my_decorator(func): def wrapper(*args, **kwargs): print("함수 호출 전") result = func(*args, **kwargs) print("함수 호출 후") return result return wrapper# 데코레이터 적용@my_..