- 과거내용
- DataFrame - 정보
1. 인덱스 정보
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#인덱스
print(df.index)
Index(['row1', 'row2', 'row3'], dtype='object')
인덱스의 이름과 타입을 index 함수를 통해 얻을 수 있다.
2. 열 정보
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#열 정보
print(df.columns)
Index(['col1', 'col2', 'col3'], dtype='object')
인덱스와 마찬가지로 columns 함수를 이용해
컬럼의 이름과 타입을 얻을 수 있다.
3. 데이터 타입
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#데이터 타입
print(df.dtypes)
col1 int64
col2 int64
col3 int64
dtype: object
dtypes 함수를 이용해 데이터의 타입을 확인할 수 있다.
4. 축
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#축 정보
print(df.axes)
[Index(['row1', 'row2', 'row3'], dtype='object'),
Index(['col1', 'col2', 'col3'], dtype='object')]
axes 함수를 이용해 행과 열의 정보를 얻을 수 있다.
axes[0], axes[1]로 행과 열을 따로 얻을 수 있다.
5. 차원
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#차원 정보
print(df.ndim)
2
ndim 함수를 이용해 차원을 얻을 수 있다.
시리즈이면 1, 데이터프레임이면 2를 반환한다.
6. 요소의 갯수
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#요소의 갯수
print(df.size)
9
size 함수를 이용해 요소의 갯수를 확인할 수 있다.
7. 차원의 형태
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#차원의 형태
print(df.shape)
(3, 3)
shape를 이용하면 행과 열의 크기를 알 수 있다.
순서대로 행과 열을 반환한다.
8. 정보축
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#정보축
print(df.keys)
<bound method NDFrame.keys of col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9>
keys 함수를 사용하면 시리즈에서는 index, 데이터프레임에서는 열을 반환한다.
9. 키값
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
#키값
print(df.get('col1'))
row1 1
row2 4
row3 7
Name: col1, dtype: int64
get 함수를 사용해 열의 값들을 가져올 수 있다.
또한 타입도 알 수 있다.
10. 비교
#원본 데이터
col1 col2 col3
row1 1 2 3
row2 4 5 6
row3 7 8 9
col1 col2 col3
row1 2 3 4
row2 4 5 7
row3 5 8 9
#비교
print(df.compare(df2,align_axis=0))
col1 col2 col3
row1 self 1.0 2.0 3.0
other 2.0 3.0 4.0
row2 self NaN NaN 6.0
other NaN NaN 7.0
row3 self 7.0 NaN NaN
other 5.0 NaN NaN
compare 함수를 이용해 두 데이터프레임을 비교할 수 있다.
기본적으로 다른 값이면 각각 self와 other에 기록되고, 같으면 NaN값이 된다.
또한 align_axis를 이용해 멀티 행 또는 열을 선택할 수 있다.
이외에도 keep_shape, keep_equal 등의 옵션이 있다.
11. 행의 수
#원본 데이터
col1 col2 col3
row1 A 2 3
row2 B 5 6
row3 A 2 6
#행의 수
print(df.value_counts(subset=['col1']))
A 2
B 1
dtype: int64
value_counts를 사용해서 행의 수를 구할 수 있다.
subset으로 원하는 행만 지정할 수 있고, normalize로 수 대신 비율로 표현할 수 있다.
또한 sort, ascending, dropna 등의 옵션을 사용할 수 있다.
12. 고유 요소의 수
#원본 데이터
col1 col2 col3
row1 A 2 3
row2 B 5 <NA>
row3 A 2 6
#고유 요소 수
print(df.nunique(axis=0,dropna=False))
col1 2
col2 2
col3 3
dtype: int64
nunique를 사용해서 고유 요소의 수를 구할 수 있다.
axis로 행과 열 중 선택하고, dropna는 False는 NaN값도 고유한 값으로 포함하는 것이고,
True는 그렇지 않은 것이다. 결과적으로 고유한 수가 몇 개인지 얻을 수 있다.
'프로그래밍 > 파이썬' 카테고리의 다른 글
EDA - 1단계 : 데이터 다루기 - 축, 레이블 (3) | 2023.07.17 |
---|---|
EDA - 1단계 : 데이터 다루기 - 확인 (1) | 2023.07.16 |
EDA - 1단계 : 데이터 다루기 - 가공 (2) | 2023.07.13 |
EDA - 1단계 : 데이터 다루기 - 정렬, 결합 (3) | 2023.07.11 |
EDA - 1단계 : 데이터 다루기 - 비교, 필터링, 결측치 (2) | 2023.07.10 |