Base/Python

[Python] Pandas 사용법 - DataFrame 생성, 추가 , 수정, 삭제, indexing

반응형

 

# DataFrame


 

- 2차원 행렬 데이터에 인덱스를 붙인 것과 동일하다

- 행 인덱스, 열 인덱스를 붙일 수 있다.

 

 

 

# 데이터 프레임 생성

pd.DataFrame(data, index=[], columns=[])

#index 와 columns 는 생략 가능하다

# 년도에 해당하는 도시별 인구수 정의

data라는 값에 딕셔너리 값을 넣고 이 값을 data 부분에 넣어 데이터 프레임을 만든다. 딕셔너리의 key값은 컬럼명이 되고 들어가는 values 는 컬럼 값이 된다.

index 값은 index=[] 를 통해 지정해준다.

 

이런식으로 처음 DataFrame을 생성할 때 columns 값을 지정해 줄수도 있다. 이것을 통해 컬럼명을 바꿔줄수 있다.

 

컬럼 정보는 해당 데이터 프레임에 columnse 를 사용해서 볼 수 있다.

 

 

index 값은 위와같은 식으로 볼 수 있다.

 


 

#인덱스 이름 / 컬럼 이름 생성

 

DataFrame.index.name = 인덱스 이름

DataFrame.columns.name = 컬럼이름

 

위와 같은 방식으로 인덱스의 이름과 컬럼의 이름을 지정 해줄 수 있다.

 


 

# random 함수를 통한 DataFrame 생성

데이터 프레임 생성 예제

 


 

# 컬럼추가

DataFrame['기존에 없던 컬럼명'] = 넣을 값

 

해당 DataFrame에 없는 컬럼명을 넣고 값을 추가해서 정의 해주면 컬럼이 추가된다.

 


 

# 컬럼삭제

 

del DataFrame['컬럼명']

 

del 을통해 삭제할 수 있다. 여기서도 배열 인덱싱은 안된다.

 


# Series,DataFrame

 

하나를 받을때는 Series 형으로 받아지고

값이 두개 이상일 때는 DataFrame이 형태로 받아진다.

 

 


# row indexing / slicing

 

- 인덱스 , 문자라벨 슬라이싱도 가능하다.

 

 

 

 

 

이런식의 슬라이싱도 가능하다.

 

 

# - 개별 데이터 인덱싱(특정 행, 특정 컬럼)

 

 

 


 

# 데이터 프레임 예제

 

- 위 데이터를 보고 모든 학생의 수학점수를 시리즈로 출력하라

- 모든 학생의 국어와 영어 점수를 데이터 프레임으로 만들어라

- 모든학생의 각 과목 평균 점수를 새로운 열로 추가하라

- 최호진 학생의 영어 점수를 90 점으로 수정하고 평균 점수도 다시 게산하라

- 김지은 학생의 점수를 데이터 프레임으로 만들어라

- 김정수 학생의 점수를 시리즈로 출력하라

- 황인범 학생의 국어점수와 수학점수를 100점으로 수정하고 평균 점수도 다시 계산하라

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형