본문 바로가기

데이터프레임

[데이터분석] 데이터 프레임 - 새로운 행 추가하기 - loc[ ] 데이터 프레임으로 데이터 분석을 할 때, 필요에 의해서 새로운 행을 추가해야 할 수 있는데요, 이때 iloc 또는 loc 함수를 사용하여 새로운 행을 추가할 수 있습니다. 먼저, 다음과 같은 데이터프레임이 있다고 가정해보겠습니다. tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 3hotmilk130002.5 4hottea340003.0 5icewater210004.5 위 데이터프레임에서 새로운 행을 추가하고 싶다면, loc[ ] 함수를 사용하면 되는데요, df.loc['인덱스번호 또는 이름'] = [ 데이터 리스트 ] 와 같이 코드를 입력하면 됩니다. 따라서 만약 맨 마지막에 ['ice', 'coke', 3, 20.. 더보기
[데이터분석] 데이터프레임 : 특정 조건 만족하는 행 삭제하기 - 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() 함수를 .. 더보기
[데이터분석] 데이터프레임 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, .. 더보기
[데이터분석] 데이터 프레임 : 인덱싱 - iloc / loc 차이 이전 포스팅에서는 데이터프레임에서 원하는 행을 인덱싱 하는 iloc[ ] 에 대해서 알아보았는데요, iloc[ ] 뿐만 아니라 loc[ ] 도 인덱싱을 하는 함수입니다. iloc[ ] 와 loc[ ] 의 차이에 대해 바로 설명하자면, iloc[ ] 는 인덱스 번호로 인덱싱 하는 방법이고, loc[ ] 는 인덱스 이름으로 인덱싱 하는 방법입니다. 한 번 코드를 보면서 설명드리도록 하겠습니다. 1. iloc[ ] : 인덱스 번호로 인덱싱 먼저, 다음과 같은 데이터프레임(df)이 있다고 가정해보겠습니다. tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 3hotmilk420002.5 4hottea340003.0 5icew.. 더보기
[데이터분석] 데이터 프레임 : 원하는 행 인덱싱 하기 - iloc 데이터 프레임을 다루다보면, 원하는 행만 추출하는 등 인덱싱을 해야 하는 경우가 있는데요, 인덱싱은 iloc 라는 모듈을 이용해서 할 수 있습니다. - iloc[ ] : 원하는 행 인덱싱 먼저, 아래와 같은 데이터프레임(df)이 있다고 가정해보겠습니다. tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 3hotmilk420002.5 4hottea340003.0 5icewater210004.5 위 데이터프레임에서 왼쪽을 보면 알 수 있듯이, 첫 번째 행의 인덱스가 0부터 시작합니다. 이제 여기서 인덱싱을 하려면 iloc[인덱스번호] 처럼 코드를 입력하면 되는데요, 첫 번째 행을 인덱싱 해보도록 하겠습니다. df.ilo.. 더보기
[데이터분석] 데이터 프레임 : 두 개의 칼럼(열) 합치기 (문자열 데이터) - map() 데이터 프레임에서 문자열 데이터(텍스트)가 있는 두 열이 있을 때, 이 두 열을 합치고 싶다면 어떻게 해야 할까요? 바로, map() 함수를 사용하면 쉽게 열을 합칠 수 있는데요, 아래 코드를 보면서 설명드리도록 하겠습니다. 1. 두 개의 칼럼 합치기 먼저, 아래와 같이 'df' 라는 이름의 데이터 프레임이 있다고 가정해보겠습니다. tempitemcountpricerating 0hotcoffee130004.5 1icejuice540003.0 2iceade250004.0 3hotmilk420002.5 4hottea340003.0 5icewater210004.5 위 데이터프레임을 보면, 'temp' 칼럼과 'item' 칼럼에 문자열 데이터가 있음을 확인할 수 있습니다. 여기서 텍스트 데이터로 이루어진 열을 .. 더보기