데이터분석 정보

판다스 pandas 자주 쓰는 명령어 모음

로그미 2021. 12. 8. 10:12

오늘은 파이썬으로

데이터분석 시작하시는 분들이

가장 많이 사용하게 될

판다스 pandas 패키지에서

자주 사용하는 명령어

알려드릴게요!

Photo by  XPS  on  Unsplash

 

 

 


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']]

컬럼명에 조건을 줘서

데이터를 추출할 수도 있어요

정규 표현식을 사용해서

조건을 만족하는 컬럼만 추출할 수도 있답니다

&amp;amp;copy; xps, 출처 Unsplash

 

오늘 이렇게

파이썬 판다스에서

자주 쓰는 명령어 알아보았는데요

제가 다음번에는

데이터 분석할 때

조금 더 잘 쓰는 함수들 정리해드릴게요!