반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- django
- numpy
- gas
- c#
- matplotlib
- PANDAS
- Python
- Java
- Github
- GIT
- Mac
- string
- list
- PySpark
- Apache
- PostgreSQL
- 파이썬
- hive
- dataframe
- Google Excel
- SQL
- Excel
- Redshift
- Tkinter
- math
- google apps script
- array
- Google Spreadsheet
- Kotlin
Archives
- Today
- Total
달나라 노트
Python Pandas : to_list (Series를 list type으로 만들기) 본문
Python/Python Pandas
Python Pandas : to_list (Series를 list type으로 만들기)
CosmosProject 2021. 10. 27. 19:35728x90
반응형
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
반응형
'Python > Python Pandas' 카테고리의 다른 글
Comments