본문 바로가기

데이터프레임

[머신러닝] 데이터프레임 : Null 값이 있는 행 확인하고, 삭제하는 방법 머신러닝 학습을 하기 전 데이터 전처리를 할 때, 데이터프레임 상에서 Null 값이 있는 행이 있는지 확인하고, 또 존재한다면 삭제하고 싶을 때, 코드를 어떻게 작성해야 하는지 아래 코드를 보면서 살펴보도록 하겠습니다. 1. Null 값 확인하기 먼저, 다음과 같이 Null 값이 있는 데이터프레임이 있다고 가정해보겠습니다. # itempricecount 0water1000.01.0 1milk2000.0NaN 2coffee3000.02.0 3adeNaN1.0 4latte5000.03.0 5tea6000.02.0 위 데이터프레임을 보면 각각 1행과 3행에 NaN 으로 Null 값이 있는 것을 확인할 수 있는데요, 이 데이터프레임의 데이터는 매우 작아서 어디에 Null 값이 있는지 바로 알 수 있지만, 데이터.. 더보기
[머신러닝] 사이킷런(Scikit-learn) - iris(붓꽃) 데이터 불러와 데이터프레임으로 저장하기 사이킷런(Scikit-learn) 라이브러리는 의사결정 트리, 분류, 회귀 등의 알고리즘에 사용하기 적합한 함수 및 데이터를 제공하는 라이브러리로, 이번 글에서는 사이킷런에서 제공하는 데이터를 불러와 데이터프레임 형식으로 보는 방법에 대해서 살펴보도록 하겠습니다. - 사이킷런 데이터 불러오기 사이킷런 라이브러리에는 다양한 데이터가 들어있는데요, 그중 대표적인 데이터인 iris(붓꽃) 데이터를 가져와보겠습니다. from sklearn import datasets iris_dataset = dataset.iris() 먼저, sklearn 에서 데이터가 들어있는 datasets 라이브러리를 import 해준 다음, dataset.load_iris() 을 통해 iris 데이터를 가져와 iris_dataset 이.. 더보기
[머신러닝] 사이킷런(Scikit-learn) - sklearn 데이터 불러오기 (보스턴 주택데이터) 사이킷런(Scikit-learn) 라이브러리는 의사결정 트리, 분류, 회귀 등의 알고리즘에 사용하기 적합한 함수 및 데이터를 제공하는 라이브러리로, 이번 글에서는 사이킷런에서 제공하는 데이터를 불러와 데이터프레임 형식으로 보는 방법에 대해서 살펴보도록 하겠습니다. - 사이킷런 데이터 불러오기 사이킷런 라이브러리에는 다양한 데이터가 들어있는데요, 그중 보스턴 주택 데이터를 가져와보겠습니다. from sklearn import datasets boston_dataset = dataset.load_boston() 먼저, sklearn 에서 데이터가 들어있는 datasets 라이브러리를 import 해준 다음, dataset.load_boston() 을 통해 보스턴 주택 데이터를 가져와 boston_datase.. 더보기
[데이터분석] 여러 리스트로 데이터 프레임 만들고 엑셀(excel)로 저장하기 1. 리스트로 데이터 프레임 만들기 여러 리스트가 있다면 이러한 리스트를 모아서 데이터프레임을 만들 수 있는데요, 아래와 같이 3개의 리스트가 있다고 가정해보겠습니다. item = ['아메리카노', '라떼', '차', '에이드', '쥬스'] price = [3500, 4000, 4500, 5000, 4000] rating = [4.2, 3.4, 4.4, 4.0, 3.9] 그리고나서, 위 리스트로 'cafe' 라는 이름의 데이터프레임을 만들고 출력해보겠습니다. import pandas as pd cafe = pd.DataFrame() cafe['항목'] = item cafe['가격'] = price cafe['별점'] = rating display(cafe) # output : 항목가격별점 0아메리카노35.. 더보기
[데이터분석] matplotlib : 축 범위 지정하는 방법 - axis() matplotlib 라이브러리를 이용하면 그래프를 쉽고 간단하게 그릴 수 있는데요, matplotlib 라이브러리에서는 x축과 y축의 범위를 지정하는 axis() 함수를 제공합니다. 그렇다면 axis() 함수로 어떻게 축 범위를 지정하는지 살펴보도록 하겠습니다. - axis() : 축 범위 지정하기 먼저, 간단한 그래프를 그려보도록 하겠습니다. import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [1, 8, 27, 64, 125] plt.plot(x,y) plt.show() 이 그래프를 보면, x축은 1에서 5까지, y축은 0에서 120까지로 범위가 지정되어 있는데요, 축 범위를 x축은 0에서 6까지, y축은 0에서 150까지로 axis() 함수를 이용해서.. 더보기
[데이터분석] matplotlib : 두 선 그래프 사이에 특정 영역 색칠하기 - fill_between 지난 글에서는 fill_between() 함수를 사용해서 선 그래프의 특정 구간을 색깔로 채우는 방법에 대해서 살펴보았는데요, 이번에는 두 선 그래프가 있을 때 그 사이 특정 영역에 색칠하는 방법에 대해서 살펴보도록 하겠습니다. - fill_between() : 두 선 그래프 사이에 특정 영역 색칠하기 먼저, matplotlib 라이브러리를 이용하여 두 개의 선 그래프를 그려보도록 하겠습니다. import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y1 = [1, 8, 27, 64, 125] y2 = [1, 16, 54, 128, 250] plt.xticks(np.arange(0,6,1)) plt.plot(x, y1) plt.plot(x, y2) plt.show() .. 더보기
[데이터분석] matplotlib : 그래프 특정 구간 색칠하기 - fill_between() matplotlib 라이브러리를 이용하여 그래프를 쉽고 간단하게 그릴 수 있는데요, matplotlib 라이브러리에서는 선그래프에서 특정 구간을 색칠해서 나타내는 함수 fill_between()을 제공합니다. 한 번 코드를 보면서 살펴보도록 하겠습니다. - fill_between() : 그래프 특정 구간 채우기 먼저, 그래프를 하나 만들어 보도록 하겠습니다. import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [1, 8, 27, 64, 125] plt.xticks(np.arange(0,6,1)) plt.plot(x,y) plt.show() 만약 이 그래프에서 x축의 2와 3 사이의 영역을 색칠하고 싶다면 fill_between() 함수를 사용하면 되는데요,.. 더보기
[데이터분석] 데이터프레임 : 특정 셀 배경색 설정하는 방법 - style, applymap 데이터프레임에서는 셀의 배경색, 폰트 사이즈, 폰트 색깔 등을 지정할 수 있는데요, 이번 글에서는 배경색을 설정하는 방법에 대해서 설명하도록 하겠습니다. - style.applymap() : 데이터프레임 셀 배경색 설정 style.applymap() 함수를 사용하여 셀 배경색을 쉽게 설정할 수 있는데요, 먼저 아래와 같은 데이터프레임이 있다고 가정해보겠습니다. 이 데이터프레임에서 만약 1번째 행 'price' 칼럼에 있는 데이터 '2000'의 배경색을 빨간색으로 지정하고 싶다면 아래와 같이 코드를 입력하면 됩니다. def color_cell(x,color): color = f'background-color:{color}' return color df.style.applymap(color_cell,colo.. 더보기
[데이터분석] 데이터프레임 : 랜덤으로 행 복제하는 방법 - sample 이전 글에서는 sample() 함수를 이용하여 원하는 개수 또는 원하는 비율만큼 랜덤으로 행을 추출하는 것에 대해서 알아보았는데요, 이번에는 원하는 비율만큼 랜덤으로 행을 복제해서 나타내는 방법에 대해서 살펴보도록 하겠습니다. - sample(frac= ) : 랜덤으로 행 복제하기 sample(frac= ) 함수는 데이터프레임에서 원하는 비율만큼 랜덤으로 행을 추출하는 함수로, 예를 들어 df라는 이름의 데이터프레임에서 25%만 랜덤으로 추출해서 보고 싶으면 다음과 같이 입력하면 됩니다. df.sample(frac=0.25) 즉, 50%는 df.sample(frac = 0.5), 75%는 df.sample(frac = 0.75) 라고 입력하면 되는데요, 그렇다면 frac의 값이 1을 넘어가게 되면 어떻게.. 더보기
[데이터분석] 데이터프레임 : 랜덤으로 행 출력하기 (원하는 비율) - sample 데이터프레임을 다양하게 변경할 때, 변경되었는지 확인하기 위해 head() 함수 또는 tail() 함수를 주로 사용합니다. 하지만 head() 함수와 tail() 함수는 상단 또는 하단에 있는 행만 보이기 때문에 중간에 데이터가 어떠한지 모를 수 있습니다. 따라서 데이터를 무작위로 추출하려면 sample() 함수를 사용하는 것이 적절한데요, 아래 코드를 보면서 설명드리도록 하겠습니다. 1. sample(n = 개수) : '개수'만큼 무작위로 행 추출하기 만약 df라는 데이터프레임이 있을 때, 10개의 행만 랜덤으로 추출해서 보고 싶다면, 다음과 같이 코드를 입력하면 됩니다. df.sample(n=10) 2. sample(frac = 비율) : '비율'만큼 무작위로 행 추출하기 반면, 개수를 지정하는 것 .. 더보기