본문 바로가기

파이썬

[데이터분석] 데이터프레임 : 특정 조건 만족하는 행 삭제하기 - drop() 이전 글에서는 특정 조건을 만족하는 행을 추출하고, 해당되는 인덱스를 반환하는 방법에 대해서 살펴보았는데요, 이번 글에서는 특정 조건을 만족하는 행을 삭제하는 방법에 대해서 살펴보도록 하겠습니다. 1. 특정 조건 만족하는 행의 인덱스 찾기 특정 조건을 만족하는 행을 삭제하기 위해선, 해당되는 행의 인덱스를 알아야 이를 이용해서 삭제할 수 있는데요, 먼저, 인덱스를 찾는 방법에 대해서 살펴보도록 하겠습니다. 아래와 같은 데이터 프레임이 있다고 가정할 때, tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 3hotmilk130002.5 4hottea340003.0 5icewater210004.5 만약 'price' 칼럼.. 더보기
[데이터분석] 데이터프레임 : 특정 조건 만족하는 행 추출 & 해당 인덱스 반환 데이터 프레임으로 데이터 분석을 할 때, 특정 조건을 만족하는 행을 추출하거나, 조건을 만족하는 행의 인덱스 번호를 반환시킬 수 있는데요, 아래 코드를 보면서 설명하도록 하겠습니다. 1. 특정 조건 만족하는 행 추출하기 먼저, 아래와 같이 음료와 관련한 데이터프레임이 있다고 가정해보겠습니다. tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 3hotmilk130002.5 4hottea340003.0 5icewater210004.5 만약 이 데이터 프레임에서 'price' 칼럼의 데이터가 4000 이상인 행만 추출해서 보고 싶다면 다음과 같이 코드를 입력하면 됩니다. df[df['price'] >= 4000] temp.. 더보기
[데이터분석] 데이터프레입 : 중복된 행 삭제 - drop_duplicates 이전 글에서는 데이터프레임에서 중복된 행이 있는지 확인하고, 중복된 행이 몇 개 있는지 구하는 방법에 대해서 살펴보았는데요, 이번 글에서는 중복된 행을 삭제하는 방법에 대해서 설명하도록 하겠습니다. 1. drop_duplicates() : 중복된 행 삭제하기 먼저, 다음과 같이 중복된 데이터가 있는 데이터프레임이 있다고 가정해보겠습니다. tempitemcountprice 0hotcoffee13000 1icejuice34000 2iceade25000 3hotcoffee13000 4hottea34000 5icewater21000 6icejuice34000 위 데이터 프레임을 보면, 3번째 행은 0번재 행과 중복, 6번째 행은 1번째 행과 중복됩니다. 이는 duplicated() 함수를 통해서 아래 코드처럼 .. 더보기
[데이터분석] 데이터프레임 : 중복된 행 찾기 & 개수 - duplicated(), sum() 이전 글에서는 데이터 프레임에서 결측치가 있는 행을 찾는 함수 isnull()과 칼럼마다 결측치의 개수를 구하는 함수 isnull().sum() 함수에 대해 알아보았는데요, 이번에는 중복된 행을 찾는 함수 duplicated()와 그 개수를 구하는 방법에 대해서 살펴보도록 하겠습니다. 1. duplicated() : 중복된 행 찾기 먼저, 다음과 같은 데이터프레임이 있다고 가정해보겠습니다. tempitemcountprice 0hotcoffee13000 1icejuice54000 2iceade25000 3hotcoffee13000 4hottea34000 5icewater21000 위 데이터프레임을 보면, 0번째 행과 3번째 행의 데이터가 겹치는 것을 볼 수 있는데요, 한 번 duplicated() 함수를 .. 더보기
[데이터분석] 데이터프레임 : 결측치 있는지 확인하기 & 칼럼별 개수 세기 - isnull(), isnull().sum() 데이터 분석을 하기 전 데이터 전처리를 할 때, 결측치(결측값, NaN)가 있으면 데이터 분석을 할 때 문제가 될 수 있는데요, 사전에 결측치가 있는지 알아보는 것이 중요합니다. 하지만 데이터가 많지 않을 때 결측치가 있는지 한 눈에 알 수 있지만 데이터가 매우 많다면 결측치가 어디에 있는지, 칼럼마다 몇 개가 있는지 확인하기 어려울 수 있습니다. 따라서 pandas 에서는 결측치가 얼마큼 있는지 알려주는 함수를 제공하는데요, 아래 예시와 코드를 보면서 설명하도록 하겠습니다. 1. isnull() : 결측치 확인하기 먼저, 결측치가 있는지 확인하는 함수는 isnull() 함수로, 각 행, 열마다 결측치가 있는 데이터가는 True, 결측치가 아닌 데이터는 False를 반환합니다. 예를 들어, 아래와 같은 .. 더보기
[데이터분석] 데이터프레임 concat() 으로 병합 시, 인덱스 재배열 하는 방법 여러 개의 데이터프레임은 concat() 함수로 위아래 또는 좌우로 병합할 수 있는데요, 이때 인덱스는 자동으로 재배열되어서 나오지 않는답니다. 따라서 어떻게 해야 인덱스를 재배열할 수 있는지 코드를 보면서 살펴보도록 하겠습니다. 먼저, 아래와 같은 두 데이터프레임이 있다고 가정해보겠습니다. tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 indextempitemcountpricerating 03hotmilk420002.5 14hottea340003.0 25icewater210004.5 이제 이 두 데이터프레임을 합치려고 하는데요, concat() 함수 안에 합칠 데이터프레임을 다음과 같이 입력하면 됩니다. pd... 더보기
[데이터분석] 데이터프레임 : 위/아래, 좌/우로 합치기 - concat() 데이터프레임은 concat() 함수를 이용하여 두 개의 데이터프레임을 위/아래 또는 좌/우로 합칠 수 있는데요, 코드를 보면서 살펴보도록 하겠습니다. 1. 위 아래로 데이터프레임 합치기 먼저 아래와 같은 두 개의 데이터프레임(df1, df2)이 있다고 가정해보겠습니다. tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 indextempitemcountpricerating 03hotmilk420002.5 14hottea340003.0 25icewater210004.5 이제 이 두 데이터프레임을 합치려고 하는데요, concat() 함수 안에 합칠 데이터프레임을 다음과 같이 입력하면 됩니다. pd.concat([df1, .. 더보기
[데이터분석] 데이터 프레임 : 행과 열 바꾸기 - transpose() pandas 라이브러리를 이용하면 데이터프레임으로 데이터 분석을 쉽게 할 수 있는데요, 특히 다양한 형태로 쉽게 변경할 수 있기 때문에 많이 사용됩니다. 한편, 데이터프레임으로 데이터를 분석할 때, 행과 열을 바꿔서 나타내고 싶을 수 있는데요, 이러한 경우 transpose() 함수를 사용하여 행과 열을 바꿀 수 있습니다. 먼저, 아래와 같은 데이터프레임이 있다고 가정해보겠습니다. tempcountpricerating item coffeehot130004.5 juiceice540003.0 adeice250004.0 milkhot420002.5 teahot340003.0 waterice210004.5 위 데이터프레임은 'item' 칼럼이 인덱스로 설정된 데이터프레임입니다. 이제 이 데이터프레임에서 tran.. 더보기
[데이터분석] matplotlib : 그래프 눈금에 이름 / 단위 나타내는 법 matplotlib 라이브러리는 그래프를 쉽고 간단하게 그릴 수 있도록 도와주는 라이브러리인데요, 그래프를 만들다 보면 x축이나 y축 눈금에 있는 텍스트를 다른 것으로 변경하거나 단위를 붙여서 나타내고 싶을 수 있습니다. matplotlib 라이브러리에서는 이렇게 눈금의 이름을 바꾸는 것이 가능한데요, 아래 코드를 보면서 살펴보도록 하겠습니다. 1. 그래프 눈금에 이름 또는 단위 나타내기 먼저, 간단한 그래프를 그려보도록 하겠습니다. import numpy as np import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] y = np.arange(1,10,1) plt.xticks(np.arange(0,11,1)) #x축 눈금간격 설정 pl.. 더보기
[데이터분석] matplotlib : 그래프 눈금 간격 지정 방법 matplotlib 라이브러리는 그래프를 쉽게 그리도록 도와주는 라이브러리인데요, 기본적으로 그래프를 그리면 눈금이 자동으로 지정되어서 출력됩니다. 하지만 눈금이 원하는 그래프와 적절하지 않다면 이를 조정해야 하는데요, 눈금 간격을 지정하는 방법에 대해서 알아보도록 하겠습니다. - 그래프 눈금 간격 설정하기 먼저, matplotlib 라이브러리와 numpy 배열을 이용하여 간단한 그래프를 만들어보도록 하겠습니다. import numpy as np import matplotlib.pyplot as plt a = np.arange(0,10,1) #0,2,4,6,8 plt.plot(a,a,'bo') 출력된 결과를 보면, x축과 y축의 눈금 모두 2로 설정이 되어 있는데요, 눈금 간격을 설정하는 방법은 xtic.. 더보기