반응형
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 | 31 |
Tags
- array
- list
- Google Spreadsheet
- Tkinter
- Redshift
- PANDAS
- Python
- PySpark
- django
- Kotlin
- Github
- gas
- string
- google apps script
- GIT
- matplotlib
- 파이썬
- Java
- Apache
- c#
- math
- Excel
- dataframe
- Mac
- Google Excel
- numpy
- PostgreSQL
- SQL
- hive
Archives
- Today
- Total
달나라 노트
Python Pandas : values (DataFrame을 numpy arrary 형태로 변환하기) 본문
Python/Python Pandas
Python Pandas : values (DataFrame을 numpy arrary 형태로 변환하기)
CosmosProject 2021. 6. 11. 01:29728x90
반응형
pandas의 values는 DataFrame에 적용하여
해당 DataFrame을 numpy arrary의 형태로 변환해줍니다.
import pandas as pd
dict_test = {
'col1': [1, 2, 3, 4, 5],
'col2': ['a', 'b', 'c', 'd', 'e'],
'col3': [6, 7, 8, 9, 10]
}
df_test = pd.DataFrame(dict_test)
print(df_test)
print(df_test.values)
-- Result
col1 col2 col3
0 1 a 6
1 2 b 7
2 3 c 8
3 4 d 9
4 5 e 10
[[1 'a' 6]
[2 'b' 7]
[3 'c' 8]
[4 'd' 9]
[5 'e' 10]]
위 예시를 보면 Test용 DataFrame이 numpy arrary의 형태로 변경된 것을 볼 수 있습니다.
import pandas as pd
dict_test = {
'col1': [1, 2, 3, 4, 5],
'col2': ['a', 'b', 'c', 'd', 'e'],
'col3': [6, 7, 8, 9, 10]
}
df_test = pd.DataFrame(dict_test)
print(df_test)
print(df_test.loc[[1, 2], ['col2', 'col3']].values)
-- Result
col1 col2 col3
0 1 a 6
1 2 b 7
2 3 c 8
3 4 d 9
4 5 e 10
[['b' 7]
['c' 8]]
위 예시처럼 loc와 동시에 사용하여 DataFrame의 일부분에 values를 적용시킬 수도 있습니다.
다른 예시도 봐봅시다.
먼저 테스트용 DataFrame을 생성합시다.
import pandas as pd
dict_1 = {
'col1': [1, 2, 3, 4, 5],
'col2': [2, 3, 4, 5, 6],
'col3': [3, 4, 5, 6, 7]
}
df_1 = pd.DataFrame(dict_1)
print(df_1)
print(type(df_1))
- Output
col1 col2 col3
0 1 2 3
1 2 3 4
2 3 4 5
3 4 5 6
4 5 6 7
<class 'pandas.core.frame.DataFrame'>
생성한 DataFrame에 values를 적용했더니 아래와 같은 내용을 얻게 되었습니다.
import pandas as pd
df_values = df_1.values
print(df_values)
print(type(df_values))
- Output
[[1 2 3]
[2 3 4]
[3 4 5]
[4 5 6]
[5 6 7]]
<class 'numpy.ndarray'>
결과 데이터의 형식은 ndarray라고 나오는데, 간단하게 list라고 생각하면 편합니다.
가장 바깥쪽 list는 DataFrame 전체를 의미하며 내부에 존재하는 각각의 list들은 DataFrame에 존재하는 각각의 행을 의미합니다.
위 예시의 output을 보면 list속 list가 있는 형태이며 이는 모두 indexing을 통해 접근할 수 있습니다.
아래처럼 list 속 list처럼 indexing을 통해 값에 접근하는 것을 볼 수 있습니다.
import pandas as pd
df_values = df_1.values
print(df_values[0])
print(df_values[2])
print(df_values[0][0])
print(df_values[2][1])
- Output
[1 2 3]
[3 4 5]
1
4
아래처럼 list 속 list처럼 indexing을 통해 값에 접근하는 것을 볼 수 있습니다.
아래처럼 뽑아낸 ndarray는 tuple, list 등을 사용하여 tuple이나 list 형태로 변환할 수 있습니다.
import pandas as pd
df_values = df_1.values
print(tuple(df_values[0]))
print(list(df_values[1]))
- Output
(1, 2, 3)
[2, 3, 4]
728x90
반응형
'Python > Python Pandas' 카테고리의 다른 글
Python Pandas : contains (문자열의 포함여부 판단하기) (0) | 2021.06.30 |
---|---|
Python Pandas : pandas.io.sql.get_schema (DataFrame 내용을 sql create table syntax로 만들기) (0) | 2021.06.13 |
Python Pandas : shape (DataFrame의 행/열 개수(DataFrame 크기) 반환) (0) | 2021.06.11 |
Python Pandas : melt (unpivot 가로 데이터를 세로 데이터로 변경) (0) | 2021.06.08 |
Python Pandas : dropna (NaN value가 있는 row/column 제거하기) (0) | 2021.06.08 |
Comments