반응형
pandas documentation : http://pandas.pydata.org/pandas-docs/stable/
0) Series 1차원 배열의 형태를 가진 자료구조 (데이터 객체)
s = pd.Series([1,3,5,np.nan,6,8])
print(s)
1) 데이터 프레임(data frame)
데이터프레임은 2차원 테이블의 형태를 가지며 행방향 인덱스(index)와 열방향 칼럼(column)이 존재하는 행과 열을 가지는 자료구조 (데이터 객체)
import pandas as pd
values = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
index = ['첫째행', '둘째행', '셋째행']
columns = ['컬럼1', '칼럼2', '칼럼3']
df = pd.DataFrame(values, index=index, columns=columns)
print(df)
2) 데이터 프레임의 생성
데이터프레임은 리스트(List), 딕셔너리(dict), Numpy의 ndarrays, 또 다른 데이터프레임으로 생성할 수 있음
# 리스트로 생성하기
data = [
['100', '이순신', 9.7],
['101', '강감찬', 8.9],
['102', '을지문덕', 9.3],
['103', '김유신', 6.1],
]
df = pd.DataFrame(data)
print(df)
# 생성된 데이터프레임에 열(columns)을 지정
df = pd.DataFrame(data, columns=['학번', '이름', '점수'])
print(df)
# 딕셔너리로 생성하기
data = { '학번' : ['100', '101', '102', '103'],
'이름' : [ '이순신', '강감찬', '을지문덕', '김유신'],
'점수': [9.7, 8.9, 9.3, 6.1,]}
df = pd.DataFrame(data)
print(df)
데이터프레임 생성 실습(1)
#실습
#리스트를 이용하여 아래와 같은 데이터와 컬럼명을 가진 데이터 프레임을 만드시오.
#자동차 아이디 - 100, 101, 102, 103
#자동차 이름 - BMW, Benz, 제네시스, 롤스로이스
#자동차 가격 - 1000, 1200, 1200, 1500
data = [
['100', 'BMW', 1000],
['101', 'Benz', 1200],
['102', '제네시스', 1200],
['103', '롤스로이스', 1500],
]
df = pd.DataFrame(data)
print(df)
데이터프레임 생성 실습(2)
#실습
#딕셔너리를 이용하여 아래와 같은 데이터와 컬럼명을 가진 데이터 프레임을 만드시오.
#자동차 아이디 - 100, 101, 102, 103
#자동차 이름 - BMW, Benz, 제네시스, 롤스로이스
#자동차 가격 - 1000, 1200, 1200, 1500
data = { '아이디' : ['100', '101', '102', '103'],
'이름' : [ 'BMW', 'Benz', '제네시스', '롤스로이스'],
'가격': [1000, 1200, 1200, 1500,]}
df = pd.DataFrame(data)
print(df)
3) 데이터 프레임의 접근
- df.head(n) - 앞 부분을 n개만 보기
- df.tail(n) - 뒷 부분을 n개만 보기
- df['열이름'] - 해당되는 열을 확인
print(df.head(3)) # 앞 부분을 3개만 보기
print(df.tail(3)) # 뒷 부분을 3개만 보기
print(df['학번'],df['점수']) # '학번'에 해당되는 열을 보기
#dataframe 기술통계
print(df.describe())
#행열 변경
print(df.T)
#정렬
print(df)
print('-------')
print(df.sort_index(axis=0, ascending=False)) #index를 기준으로 내림차순 정렬
print('-------')
print(df.sort_index(axis=1, ascending=True)) #컬럼을 기준으로 오름차순 정렬
print(df['점수'] > 8) # 점수가 8 이상이면 True 아니면 False
print(df[df['점수'] > 9]) # 점수가 9 이상인 데이터만 출력
데이터프레임 접근 실습
#실습
#앞서 만든 학번-점수 데이터 프레임을 학점이 높은 순으로 sorting 하시오.
#실습
#앞서 만든 자동차 데이터 프레임 중에서 가격이 1200 이상인 것만 출력하시오.
반응형
LIST
'Programming' 카테고리의 다른 글
[Python][개념] 파이썬 사용 이유 및 특징, 활용처 (0) | 2021.12.25 |
---|---|
[Python][Library] 3. matplotlib - 그래프 패키지 (0) | 2021.12.25 |
[Python][Library] 1. Numpy - 배열을 다루는 라이브러리 (0) | 2021.12.24 |
[파이썬] 데이터 분석 관련 학습 자료 조사 (0) | 2021.12.19 |
[SQL][문법] 데이터베이스 (0) | 2021.12.19 |