파이썬, 2차원 자료를 pandas DataFrame() 2차원 자료 만들기
글. 오상문 sualchi@daum.net
pandas는 numpy와 함께 데이터 분석 및 수치 계산에 많이 사용하는 모듈이다. pandas에서 가장 많이 사용하는 기능은 1차원 구조의 Series와 다차원 구조의 DataFrame인데, 이번에는 pandas의 DataFrame를 이용하여 2차원 리스트 자료를 2차원 데이터 구조로 만드는 예제를 살펴보겠다.
[참고] pandas DataFrame 자료를 numpy ndarray로 바꾸기
s1 = pd.DataFrame([[ 90, 80, 85],
[ 88, 82, 85],
[ 72, 100, 90],
[250 ,262, 270]])
n1 = s1.as_matrix() # 이후 버전에서 사라질 수 있음
n2 = s1.values # 호환성 위해 이것을 권장
print(n1) # 두 출력 결과는 같음
print(n2)
다음은 예제 소스 코드이다.
#---------------------------------------------------------------------
import pandas as pd # pandas를 가져오고 별명 'pd'를 사용함
# 리스트 데이터를 이용하여 만든다. (인덱스는 정수 0,1,2,3 순서로 자동 지정)
s1 = pd.DataFrame([[ 90, 80, 85],
[ 88, 82, 85],
[ 72, 100, 90],
[250 ,262, 270]])
# 딕셔너리 데이터를 이용하여 만든다.
s2 = pd.DataFrame({"Kor":[100, 80, 85],
"Eng":[ 88, 82, 85],
"MTH":[ 75, 100, 90],
"Sum":[260, 262, 270]})
print(s1)
print("-----------------------")
print(s2)
print("-----------------------")
print(s1[0][0]) # 90
print("-----------------------")
# 합계순 정렬하여 출력하기
print(s2.sort_values(by="Sum", ascending=False))
print("-----------------------")
# 테이블 가로세로 바꾸어 출력하기
print(s2.T)
[실행 결과]
0 1 2
0 90 80 85
1 88 82 85
2 72 100 90
3 250 262 270
-----------------------
Kor Eng MTH Sum
0 100 88 75 260
1 80 82 100 262
2 85 85 90 270
-----------------------
90
-----------------------
Kor Eng MTH Sum
2 85 85 90 270
1 80 82 100 262
0 100 88 75 260
-----------------------
0 1 2
Kor 100 80 85
Eng 88 82 85
MTH 75 100 90
Sum 260 262 270
<이상>
'Python 활용' 카테고리의 다른 글
파이썬, opencv, 사진에서 얼굴 인식하기 (0) | 2020.01.13 |
---|---|
파이썬, opencv, 이미지 그레이스케일 변환 및 보기 (0) | 2020.01.12 |
파이썬, 1차원 자료를 pandas Series() 1차원 자료 만들기 (0) | 2020.01.11 |
파이썬, 기상청 웹 XML 페이지의 도시별 날씨 출력하기 (0) | 2020.01.08 |
파이썬, 리눅스에서 소스 파일 실행하기(셔뱅,shebang) (0) | 2020.01.06 |