[데이터분석] 데이터프레임 : 특정 칼럼(열) 삭제하기 - drop()
데이터프레임으로 데이터 분석을 할 때, 필요 없는 칼럼은 삭제하는 게 좋은데요, drop() 함수를 사용하면 쉽게 칼럼을 삭제할 수 있습니다.
먼저, 아래와 같은 데이터프레임이 있다고 가정해보겠습니다.
import pandas as pd
df = pd.DataFrame(
{'name': ['coffee', 'tea', 'juice','milk', 'ade'],
'price': [3000, 4000, 5000, 2000, 5000],
'rating': [4, 3.5, 3.7, 3, 2],
'category': [1,2,3,4,4]})
display(df)
name price rating category
0 coffee 3000 4.0 1
1 tea 4000 3.5 2
2 juice 5000 3.7 3
3 milk 2000 3.0 4
4 ade 5000 2.0 4
위 데이터프레임을 보면 name, price, rating, category라는 칼럼이 있는데요, 여기서'category' 칼럼을 지우는 방법은 다음과 같습니다.
df.drop(columns=['category'])
name price rating
0 coffee 3000 4.0
1 tea 4000 3.5
2 juice 5000 3.7
3 milk 2000 3.0
4 ade 5000 2.0
입력한 코드를 살펴보면, df.drop() 함수 안에 columns=['category'] 를 입력하였습니다.
그 결과, category 칼럼이 삭제되었음을 확인할 수 있습니다.
그렇다면, 2개 이상의 칼럼을 지울 때는 어떻게 해야할까요? 마찬가지로 columns = [ ] 안에 해당 칼럼 이름들을 넣어주면 됩니다. 한 번 category 칼럼과 rating 칼럼을 삭제해보겠습니다.
df.drop(columns=['category', 'rating'])
name price
0 coffee 3000
1 tea 4000
2 juice 5000
3 milk 2000
4 ade 5000
출력 결과를 보면 두 카테고리 모두 삭제되었음을 살펴볼 수 있습니다.
한편, 칼럼을 삭제하는 방법이 한 가지 더 있는데요, 바로 필요한 칼럼만 불러오는 방법입니다.
예를 들어, 만약 칼럼이 30개, 50개 등 매우 많은데, 사용할 칼럼이 3개뿐이라면 위 방식대로 칼럼을 삭제하려면 칼럼의 이름을 일일이 다 입력해주어야 합니다. 하지만 사용할 칼럼 3개만 입력해서 불러온다면 이 방법이 더 효과적일 수 있습니다.
필요한 칼럼만 불러오는 코드는 df[['칼럼1', '칼럼2', '칼럼3',,,]] 으로, 아래의 코드를 참고하시기 바랍니다.
df[['name', 'price']]
name price
0 coffee 3000
1 tea 4000
2 juice 5000
3 milk 2000
4 ade 5000
위 결과를 보면, 필요한 칼럼 외에 나머지 칼럼은 삭제되었음을 확인할 수 있습니다.
이때 위 코드에서 대괄호를 두 번 입력한다는 점 꼭 기억하시기 바랍니다 :D