달나라 노트

Python Pandas : head, tail (DataFrame에서 상위 행 또는 하위 행만 추출하기) 본문

Python/Python Pandas

Python Pandas : head, tail (DataFrame에서 상위 행 또는 하위 행만 추출하기)

CosmosProject 2021. 8. 3. 19:00
728x90
반응형

 

 

 

 

DataFrame의 행이 많아서 일부 행만 확인하고 싶을 때 또는 어떠한 이유로 처음 또는 끝의 일부 행만 추출해야할 때 사용할 수 있는 method가 있습니다.

 

Syntax

DataFrame.head() # 상위 5개 행 반환
DataFrame.tail() # 하위 5개 행 반환

DataFrame.head(n) # 상위 n개 행 반환
DataFrame.tail(n) # 하위 n개 행 반환

사용법은 위와 같습니다.

 

DataFrame에 적용할 수 있으며,

head는 기본적으로 DataFrame의 가장 위쪽 5개 행을 return해주고

tail은 기본적으로 DataFrame의 가장 아래쪽 5개 행을 return해줍니다.

 

head, tail의 parameter로 어떤 숫자를 넣게 되면 해당 숫자만큼의 행만큼 return해줍니다.

 

 

 

 

import pandas as pd

dict_item = {
    'basis_dy': [
        20200101, 20200102, 20200103,
        20200101, 20200102, 20200103,
        20200101, 20200102, 20200103,
        20200101, 20200102, 20200103, 20200104],
    'item_id': [
        1, 1, 1,
        2, 2, 2,
        3, 3, 3,
        4, 4, 4, 4],
    'item_name': [
        'a', 'a', 'a',
        'b', 'b', 'b',
        'c', 'c', 'c',
        'd', 'd', 'd', 'd'],
    'price': [
        1000, 1000, 1010,
        2000, 2100, 2050,
        3000, 3100, 2950,
        4000, 3950, 3900, 3980],
    'quantity': [
        100, 105, 98,
        50, 51, 55,
        201, 200, 220,
        30, 40, 38, 50
    ]
}
df_item = pd.DataFrame(dict_item)
print(df_item)
print(type(df_item))

df_head = df_item.head()
print(df_head)

df_tail = df_item.tail()
print(df_tail)



-- Result
    basis_dy  item_id item_name  price  quantity
0   20200101        1         a   1000       100
1   20200102        1         a   1000       105
2   20200103        1         a   1010        98
3   20200101        2         b   2000        50
4   20200102        2         b   2100        51
5   20200103        2         b   2050        55
6   20200101        3         c   3000       201
7   20200102        3         c   3100       200
8   20200103        3         c   2950       220
9   20200101        4         d   4000        30
10  20200102        4         d   3950        40
11  20200103        4         d   3900        38
12  20200104        4         d   3980        50
<class 'pandas.core.frame.DataFrame'>

   basis_dy  item_id item_name  price  quantity
0  20200101        1         a   1000       100
1  20200102        1         a   1000       105
2  20200103        1         a   1010        98
3  20200101        2         b   2000        50
4  20200102        2         b   2100        51

    basis_dy  item_id item_name  price  quantity
8   20200103        3         c   2950       220
9   20200101        4         d   4000        30
10  20200102        4         d   3950        40
11  20200103        4         d   3900        38
12  20200104        4         d   3980        50

위 예시를 보면

head는 가장 위쪽 5개 행,

tail은 가장 아래쪽 5개 행을 return해준 것을 알 수 있습니다.

 

 

 

 

 

 

 

 

import pandas as pd

dict_item = {
    'basis_dy': [
        20200101, 20200102, 20200103,
        20200101, 20200102, 20200103,
        20200101, 20200102, 20200103,
        20200101, 20200102, 20200103, 20200104],
    'item_id': [
        1, 1, 1,
        2, 2, 2,
        3, 3, 3,
        4, 4, 4, 4],
    'item_name': [
        'a', 'a', 'a',
        'b', 'b', 'b',
        'c', 'c', 'c',
        'd', 'd', 'd', 'd'],
    'price': [
        1000, 1000, 1010,
        2000, 2100, 2050,
        3000, 3100, 2950,
        4000, 3950, 3900, 3980],
    'quantity': [
        100, 105, 98,
        50, 51, 55,
        201, 200, 220,
        30, 40, 38, 50
    ]
}
df_item = pd.DataFrame(dict_item)
print(df_item)
print(type(df_item))

df_head = df_item.head(3)
print(df_head)

df_tail = df_item.tail(3)
print(df_tail)



-- Result
    basis_dy  item_id item_name  price  quantity
0   20200101        1         a   1000       100
1   20200102        1         a   1000       105
2   20200103        1         a   1010        98
3   20200101        2         b   2000        50
4   20200102        2         b   2100        51
5   20200103        2         b   2050        55
6   20200101        3         c   3000       201
7   20200102        3         c   3100       200
8   20200103        3         c   2950       220
9   20200101        4         d   4000        30
10  20200102        4         d   3950        40
11  20200103        4         d   3900        38
12  20200104        4         d   3980        50
<class 'pandas.core.frame.DataFrame'>

   basis_dy  item_id item_name  price  quantity
0  20200101        1         a   1000       100
1  20200102        1         a   1000       105
2  20200103        1         a   1010        98

    basis_dy  item_id item_name  price  quantity
10  20200102        4         d   3950        40
11  20200103        4         d   3900        38
12  20200104        4         d   3980        50

위 예시를 보면 head, tail method의 인자로서 3이라는 인자를 전달하였고

따라서 head는 가장 위쪽 3개 행,

tail은 가장 아래쪽 3개 행을 return해준 것을 알 수 있습니다.

 

 

 

 

 

 

 

728x90
반응형
Comments