오늘은 파이썬으로
데이터분석 시작하시는 분들이
가장 많이 사용하게 될
판다스 pandas 패키지에서
자주 사용하는 명령어
알려드릴게요!

1. DataFrame 생성하기
#pandas 불러오기
import pandas as pd
# DataFrame 생성하기
# 방법1.
df = pd.DataFrame({"a" : [4, 5, 6], "b" : [7, 8, 9], "c" : [10, 11, 12]}, index = [1, 2, 3])
# 방법2. 순서 주의할 것
df2 = pd.DataFrame([[4, 7, 10], [5, 8, 11], [6, 9, 12]], index = [1, 2, 3], columns = ['a', 'b', 'c'])
df와 df2는
동일하게 아래와 같이 생성됩니다

2. 데이터 변환하기
컬럼을 열로, 열을 컬럼으로
# 컬럼을 열로 만들기
df_pivot = pd.melt(df, var_name='var', value_name='val')
df_pivot
# 열을 컬럼으로 만들기 (Pivot)
df_pivot.pivot(columns='var', values='val')
데이터 전처리 할 때,
종종 쓰게 되실 거예요
특히 melt 함수는
기억해 두시면 좋아요


dataframe 합치기
# 위 아래로 데이터 결합하기
pd.concat([df, df2])
# 오른쪽에 데이터 결합하기
pd.concat([df, df2], axis = 1)
# concat DataFrame 컬럼이 다른 경우,
df1 = pd.DataFrame({"d" : [13, 14, 15], "e" : [16, 17, 18], "f" : [19, 20, 21]}, index = [1, 2, 3])
pd.concat([df, df1])
pd.concat([df, df1], axis = 1)
두 테이블을 결합할 때
concat이라는 함수를 이용하게 됩니다
조심하셔야 할 점은
두 테이블의 컬럼명이 다를 경우에는
아래 사진처럼 위아래로 결합하는 데이터가
이쁘지 않게 붙어요


데이터 정렬하기
# 데이터 정렬하기 (오름차순)
df.sort_values('a')
# 데이터 정렬하기 (내림차순)
df.sort_values('a', ascending=False)
# 데이터 정렬한 상태로 유지하기
df.sort_values('a', ascending=False, inplace = True)
이건 진짜 필수로 기억해 두셔야 해요
ㅎㅎㅎ
데이터 정렬한 상태로
계속 유지하고 싶다면
'inplace = True'
꼭 적어주셔야 합니다


3. 데이터 추출하기
# 조건 만족하는 데이터 추출하기
df[df.a > 4]
# 중복 데이터 생성하기
df3 = pd.DataFrame([[4, 7, 10], [5, 8, 11], [4, 7, 10]], index = [1, 2, 3], columns = ['a', 'b', 'c'])
# 중복 제거된 데이터 추출하기
df3.drop_duplicates()
# 중복 제거된 데이터로 치환하기
df3 = df3.drop_duplicates()
df3
조건에 맞는 데이터
추출하실 일 많으실 텐데
필수 부호 알려드릴게요
1. < : 미만
2. > : 초과
3. == : 같은
4. <= : 이하
5. >= : 이상
특히 3번 등호 표시 2개 적으셔야 해요

4. 샘플 데이터 추출하기
# 비율로 추출할 때
df.sample(frac=0.5)
# 특정 row 수로 추출할 때
df.sample(n=2)
# 가장 값이 큰 n개 추출하기
df.nlargest(1, 'a')
# 가장 값이 작은 n개 추출하기
df.nsmallest(1, 'a')
데이터 분석할 때,
테스트하는 용으로
샘플 데이터 추출해서
처리하는 게 좋은 데
그럴 때 사용할 수 있는 함수들입니다
꼭 기억해두세요

5. 특정 컬럼만 추출하기
# dataFrame으로 반환
df[['a']]
# 시리즈로 반환 1
df['a']
# 시리즈로 반환 2
df.a
데이터를 특정 컬럼만
추출해서 보고 싶을 때 있죠?
그럴 때 사용하기 좋은 명령어들입니다
대괄호 1개인지, 2개인지에 따라서
테이블 형식으로 반환할지
시리즈 형식으로 반환할지
달라지니까 조심하세요!

조금 더 고급 지게 추출하는 방법
# 특정 패턴을 만족하는 컬럼명 추출
df.filter(regex='^a')
# 두 개의 컬럼 사이에 있는 모든 컬럼 추출
df.loc[:, 'a':'c']
# 컬럼 위치를 기준으로 추출
df.iloc[:, [0,2]]
# 조건을 만족하는 데이터 중 특정 컬럼만 추출
df.loc[df['a'] > 5, ['a', 'c']]
컬럼명에 조건을 줘서
데이터를 추출할 수도 있어요
정규 표현식을 사용해서
조건을 만족하는 컬럼만 추출할 수도 있답니다


오늘 이렇게
파이썬 판다스에서
자주 쓰는 명령어 알아보았는데요
제가 다음번에는
데이터 분석할 때
조금 더 잘 쓰는 함수들 정리해드릴게요!
'데이터분석 정보' 카테고리의 다른 글
파이썬 아나콘다 설치 step by step (0) | 2021.12.07 |
---|---|
엑셀 데이터분석 기능 추가하는 방법 (0) | 2021.12.06 |
데이터분석 비지도학습 검증 방법 모음 (0) | 2021.12.05 |
딥러닝 코딩 구글 코랩 이용하기 (0) | 2021.12.04 |
캐글 머신러닝 대회 나가기 (3) | 2021.12.03 |