[DataFrame 관련 함수]
1) 컬럼명 변경 - columns, rename
2) 컬럼추가
3) 삭제 - drop(), del
4) 정렬 - sort_values(), sort_index()
1) 컬럼명 변경
data2={'name':["James","Beth","Camila","Elsa"],
'adderss':["NY1","NY1","NY2","NY1"],
'age':[12,45,23,16]
}
# 원래 컬럼명 : ["NY1","NY1","NY2","NY1"]
df2=DataFrame(np.random.randint(10,100,16).reshape(4,4),index=data2['name'],columns=data2['adderss'])
df2
1-1) columns : 전체 컬럼의 이름을 변경
#address를 ["NY1","NY1","NY2","NY2","NY1"] >>> ["NY","London","Paris","Rome"]로 변경
df2.columns=["NY","London","Paris","Rome"]
df2
1-2) rename() : 일부 컬럼의 이름을 변경
# raname으로 부분적 변경
df2.rename(columns={'NY':'NewYork'},inplace=True)
df2
2) 행/열 추가
# NaN으로 값을 채운 컬럼 추가
df2["ph_num"]=np.NaN
df2
# NaN으로 값을 채운 Emma행 추가
df2.loc["Emma"]=np.NaN
df2
3) 삭제
3-1) drop : axis=0을 기본값으로 삭제할 행의 이름을 입력. inplace=True 적용해야 원본에서도 삭제됨.
# drop으로 Emma행 삭제
df2.drop("Emma",inplace=True)
df2
3-2) del : 삭제할 컬럼의 이름을 입력. inplace=True 없이도 바로 원본 데이터 삭제.
del df2["ph_num"]
# drop으로 열 삭제 : drop은 axis=0(행 삭제)이 기본값이라 열을 삭제하려면 axis=1 로 변경 필요.
df2.drop("ph_num",axis=1,inplace=True)
df2
4) 정렬
4-1) sort_values() : 값을 가지는 컬럼을 기준으로 정렬
- by = "컬럼명" : 정렬의 기준이 되는 컬럼 지정
- ascending = True : 오름차순
- ascending = False : 내림차순
# Paris을 기준으로 내림차순(ascending=False),Rome을 기준으로 오름차순(ascending=True)
# 2개 이상의 열을 기준으로 정렬 가능
df2.sort_values(by=["Paris","Rome"],ascending=[False,True])
4-2) sort_index() : 인덱스를 기준으로 정렬
# 인덱스를 기준으로 정렬.
# ()안에 아무것도 입력하지 않으면 정렬 시 오름차순이 기본값으로 설정됨
df2.sort_index()
'Data_Analysis > Numpy, Pandas' 카테고리의 다른 글
[Pandas] Concat, Merge (0) | 2020.07.21 |
---|---|
[Pandas] 결측치 처리 (0) | 2020.07.21 |
[Pandas] DataFrame 함수 - 데이터 조회 (0) | 2020.07.21 |
[Pandas] DataFrame 구조 확인 (0) | 2020.07.21 |
[Pandas] DataFrame 생성 (0) | 2020.07.21 |
댓글