2-1 판다스 시리즈와 데이터 프레임
python의 리스트를 [] Series함수에 넣으면 pandas.Series데이터 변수를 생성
2-2 DataFrame 만들기
1.리스트로 만들기
1. 2차원 리스트로 values값 생성
데이터 프레임 생성하는 방법
변수명 = pd.DataFrame(리스트 명)
컬럼명 설정 변수명.colums =['','','','',]
dict로 만들기
데이터를 복사해서 올려놓고 CPU에서 연산처리함
데이터가 저장되어있는것을 가르키는게 df
파이썬
얕은 복사: new_df (데이터의 백업이 X)
깊은 복사: df.copy 데이터 백업O, 메모리 공간이 2개가 되어서 원본이 훼손되지 않음. 기계적으로 메모리 복사
그래서 id 함수 사용 id(메모리 주소)확인 두개 비교해
행 추가
df.append({딕셔너리로 추가})
열 추가
5
inplace
- 조건 필터링
앞서 설명한 것처럼, 특정 조건에 맞는 행을 쉽게 필터링할 수 있어요. 예를 들어:hyundai_df = car_df[car_df['manufacturer'] == 'HYUNDAI']
이 방법은 전체 데이터프레임을 한 번에 검사해 필요한 행만 추출해요. 이는 매우 빠르고 간결해요.
- .loc[]과 .iloc[]
Pandas에서는 .loc[]과 .iloc[] 메소드를 사용하여 데이터의 특정 행과 열을 선택할 수 있어요.
.loc[]: 인덱스나 조건을 사용해 행과 열을 선택할 수 있어요.hyundai_df = car_df.loc[car_df['manufacturer'] == 'HYUNDAI']
.iloc[]: 정수 기반 인덱스를 사용해 특정 위치의 행과 열을 선택할 수 있어요.
first_row = car_df.iloc[0] # 첫 번째 행 선택
- apply() 메소드
데이터프레임의 각 행이나 열에 함수를 적용할 수 있어요. 예를 들어, 특정 조건에 맞는 값으로 새로운 열을 만들고 싶을 때 유용해요.car_df['is_hyundai'] = car_df['manufacturer'].apply(lambda x: x == 'HYUNDAI')
이 코드는 새로운 열 is_hyundai를 만들어서 각 차가 현대차인지 여부를 True 또는 False로 표시해요.
- 그룹화 (groupby)
데이터를 특정 기준으로 그룹화하고 집계할 수 있어요. 예를 들어, 제조사별로 평균 가격을 계산할 수 있어요.average_price = car_df.groupby('manufacturer')['price'].mean()
이 코드는 각 제조사별 평균 가격을 계산해서 결과를 반환해요.
- 데이터 정렬 (sort_values)
데이터를 특정 열을 기준으로 정렬할 수 있어요.sorted_df = car_df.sort_values(by='price', ascending=False)
이 코드는 가격이 높은 순서대로 데이터를 정렬해요.
요약
Pandas의 방식은 데이터를 더 빠르고 쉽게 처리할 수 있게 해줘요. 일반적인 for 반복문과 if 문을 사용하는 것보다 더 적은 코드로 더 많은 작업을 할 수 있고, 데이터가 많을 때 성능이 좋기 때문에 데이터 분석이나 머신러닝 작업에 매우 유용해요.