DataFrame Data 살펴보기
DataFrame 구조
DataFrame 정보 확인하기
앞,뒤 부분 데이터 미리보기
df.head(n)
df.tail(n)첫 n행과 마지막 n행을 출력하고 내용과 구조를 살펴볼 수 있다. 이때 n을 입력하지 않으면 default 5행을 출력한다.
>>> print(df.head(6))
mpg cylinders displacement horsepower weight acceleration model year origin name
0 18.0 8 307.0 130.0 3504 12.0 70 1 "chevrolet chevelle malibu"
1 15.0 8 350.0 165.0 3693 11.5 70 1 "buick skylark 320"
2 18.0 8 318.0 150.0 3436 11.0 70 1 "plymouth satellite"
3 16.0 8 304.0 150.0 3433 12.0 70 1 "amc rebel sst"
4 17.0 8 302.0 140.0 3449 10.5 70 1 "ford torino"
5 15.0 8 429.0 198.0 4341 10.0 70 1 "ford galaxie 500">>> print(df.tail())
mpg cylinders displacement horsepower weight acceleration model year origin name
393 27.0 4 140.0 86.00 2790 15.6 82 1 "ford mustang gl"
394 44.0 4 97.0 52.00 2130 24.6 82 2 "vw pickup"
395 32.0 4 135.0 84.00 2295 11.6 82 1 "dodge rampage"
396 28.0 4 120.0 79.00 2625 18.6 82 1 "ford ranger"
397 31.0 4 119.0 82.00 2720 19.4 82 1 "chevy s-10"요약 정보 확인하기
DataFrame의 크기(행, 열)
df에 저장된 DataFrame의 크기(행의 개수, 열의 개수)를 확인할 수 있다.
DataFrame의 기본 정보
클래스 유형, 행 인덱스의 구성, 열 이름의 종류와 수, 각 열의 자료형과 개수, 메모리 할당량에 대한 기본 정보를 출력한다.
열의 자료형 확인
기술 통계 정보 요약
산술 데이터를 갖는 열에 대한 주요 기술 통계 정보(평균, 표준편차, 최대값, 최소값, 중간값 등)를 요약 출력한다.
만약 산술 데이터가 아닌 열에 대한 정보를 포함하고 싶을 떄는 include='all' 옵션을 추가하면된다.
문자열 데이터가 들어가 있는 열의 unique(고유값 개수), top(최빈값), freq(빈도수) 정보가 추가된다.
데이터 개수 확인
각 열의 데이터 수
각 열이 가지고 있는 데이터 개수를 Series 객체로 반환한다. 이때 유효한 값의 개수만을 계산하는 점을 주의해야한다.
각 열의 고유값 수
Series 객체의 고유값 개수를 세는데 사용한다.
dropna=True 옵션을 설정하면, 데이터 값 중에서 NaN을 제외한 개수를 계산한다.
통계 함수
평균값
df.mean()
df["열 이름"].mean()
중간값
df.median()
df["열 이름"].median()
최대값
df.max()
df["열 이름"].max()
최소값
df.min()
df["열 이름"].min()
표준편차
df.std()
df["열 이름"].std()
상관계수
df.corr()
df[열 이름 리스트].corr()
평균값
중간값
최대값
산술 데이터를 가진 열에 대해서는 가장 큰 숫자를 찾아서 최대값으로 반환한다. 문자열 데이터를 가진 열에 대해서는 문자열을. ASCII 숫자로 변환해 크고 작음을 비교한다.
최소값
산술 데이터를 가진 열에 대해서는 가장 작은 숫자를 찾아서 최소값으로 반환한다. 문자열 데이터를 가진 열에 대해서는 문자열을. ASCII 숫자로 변환해 크고 작음을 비교한다.
표준편차
산술 데이터를 갖는 열의 표준편차를 계산해 Series 객체로 변환한다.
표준 편차
는
로 정의된다.
표준 편차는 자료의 산포도를 나타내는 수치로, 분산의 양의 제곱근으로 정의한다.
상관계수
corr()는 두 열 간의 상관계수를 계산한다. 산술 데이터를 갖는 모든 열에 대해 2개씩 서로 짝을 짓고, 각각의 경우에 대해 상관계수를 계산한다.
상관계수란? 두 변수 x,y 사이의 상관관계의 정도를 나타내는 수치이다.
상관계수 r은 항상 -1과 1 사이에 있다.
상관계수의 절대값의 크기는 직선관계에 가까운 정도를 나타내고, 부호는 직선관계의 방향을 나타낸다. 상관계수의 절대값이 클수록, 즉 상관계수의 값이 1 또는 -1에 가까울 수록 두 변수 사이의 연관성이 크고, 0에 가까울 수록 매우 약함을 의미한다.
r > 0 - 양의 상관관계 : 산점도에서 점들이 우상향방향으로 띠를 형성한다. 즉, 한 변수의 값이 작으면 다른 변수의 값도 작고, 한 변수의 값이 크면 다른 변수의 값도 크다. 이러한 경향을 하나의 직선으로 나타냈을 때 그 직선의 기울기는 양수가 된다.
r < 0 - 음의 상관관계 : 산점도에서 점들이 우하향방향으로 띠를 형성한다. 즉, 한 변수의 값이 작으면 다른 변수의 값은 크다. 이러한 경향을 하나의 직선으로 나타냈을 때 그 직선의 기울기는 음수가 된다.
r = +1 : 모든 점이 정확히 기울기가 양수인 직선 위에 위치한다.
r = -1 : 모든 점이 정확히 기울기가 음수인 직선 위에 위치한다.
상관계수의 단위는 없다. 따라서 단위가 다른 여러 쌍의 변수에서 직선관계의 정도를 비교할 수 있다.
출처 : 슈퍼짱짱
내장 그래프 도구
그래프를 이용한 시각화 방법은 데이터의 분포와 패턴을 파악하는데 크게 도움이 된다. Pandas는 matplotlib 라이브러리의 기능을 일부 내장하고 있어, 별도로 import를 하지 않고도 간단한 그래프를 그릴 수 있다.
Series 혹은 DataFrame 객체에 plot() 메소드를 적용해 그래프를 그릴 수 있으며, kind 옵션으로 그래프 종류를 선택할 수 있다.
line
선 그래프(default)
kde
커널 밀도 그래프
bar
수직 막대 그래프
area
면적 그래프
barh
수평 막대 그래프
pie
파이 그래프
his
히스토그램
scatter
산점도 그래프
box
박스 플롯
hexbin
고밀도 산점도 그래프
선 그래프
mac terminer에서 plot() 으로 그래프를 그려도 다음과 같이 보여지지 않는다.
이때는 matplotlib.pyplot 을 import하고 show()메소드로 보이게 할 수 있다.

시간의 흐름에 따른 연도별 발전량 변화 추이를 보기 위해서는 연도 값을 x축에 표시하는 것이 적절하다. 행렬을 전치하여 변경할 수 있다.

막대 그래프

히스토그램
히스토그램의 x축은 발전량을 일정한 간격을 갖는 여러 구간으로 나눈 것이며, y축은 연간 발전량이 x축에서 나눈 발전량 구간에 속하는 연도의 수를 빈도로 나타낸 것이다.

산점도

x축(weight)과 y축(mpg)의 관계는 차량의 무게가 클수록 mpg(연비)가 전반적으로 낮아지는 경향을 보이며, 역 상관관계를 갖는다고 해석할 수 있다.
박스 플롯
박스 플롯은 특정 변수의 데이터 분포와 분산 정도에 대한 정보를 제공한다.

각 변수들의 데이터가 퍼져있는 정도를 확인할 때 사용한다.
참고
Last updated
Was this helpful?
