달나라 노트

Python Pandas : to_list (Series를 list type으로 만들기) 본문

Python/Python Pandas

Python Pandas : to_list (Series를 list type으로 만들기)

CosmosProject 2021. 10. 27. 19:35
728x90
반응형

 

 

 

 

Pandas에서 제공하는 to_list method는 Series에 적용할 수 있으며 적용된 Series를 list 형태로 변환해주는 역할을 합니다.

 

import pandas as pd

dict_main = {
    'col1': [1, 2, 3, 4, 5, 6],
    'col2': ['alpha', 'beta', 'gamma', 'delta', 'epsilon', 'zeta']
}
df_main = pd.DataFrame(dict_main)
print(df_main)

list_col2 = df_main.loc[:, 'col2'].to_list()
print(list_col2)

list_col2 = list(df_main.loc[:, 'col2'])
print(list_col2)



-- Result
   col1     col2
0     1    alpha
1     2     beta
2     3    gamma
3     4    delta
4     5  epsilon
5     6     zeta

['alpha', 'beta', 'gamma', 'delta', 'epsilon', 'zeta']

['alpha', 'beta', 'gamma', 'delta', 'epsilon', 'zeta']

위 예시를 보면 DataFrame에서 col2를 loc를 통해 추출하였습니다.

 

df_main.loc[:, 'col2']

이때 위처럼 col2에 대괄호를 입히지 않았으므로 Series가 return될겁니다.

 

df_main.loc[:, 'col2'].to_list()

그래서 return된 Series에 to_list를 적용한 것이죠.

 

 

list_col2 = list(df_main.loc[:, 'col2'])

굳이 to_list를 쓰지 않고, list 만으로도 Series를 list로 변환할 수 있습니다.

 

 

 

 

 

 

 

 

import pandas as pd

dict_main = {
    'col1': [1, 2, 3, 4, 5, 6],
    'col2': ['alpha', 'beta', 'gamma', 'delta', 'epsilon', 'zeta']
}
df_main = pd.DataFrame(dict_main)
print(df_main)

con = (df_main['col1'] >= 3)
list_col2 = df_main.loc[con, 'col2'].to_list()
print(list_col2)



-- Result
   col1     col2
0     1    alpha
1     2     beta
2     3    gamma
3     4    delta
4     5  epsilon
5     6     zeta

['gamma', 'delta', 'epsilon', 'zeta']

위 예시는 loc의 filtering과 to_list를 동시에 사용한 예시입니다.

이렇게 하면 내가 원하는 행의 값들만 list로 만들 수도 있습니다.

 

 

 

 

 

728x90
반응형
Comments