pandas Excel 신속 처리, Nan 교체, 사전 작업
pandas Excel 읽기
import pandas as pd
# 1: , 2:sheet
pf = pd.read_excel(path, sheet_name='sheet1')
지정한 열 삭제
#
pf.drop([' ', ' ', ' '], axis=1, inplace=True)
열 이름 바꾸기
#
columns_map = {
' 1': 'newname_1',
' 2': 'newname_2',
' 3': 'newname_3',
' 4': 'newname_4',
' 5': 'newname_5',
#
'Unnamed: 10': 'newname_6',
}
new_fields = list(columns_map.values())
pf.rename(columns=columns_map, inplace=True)
pf = pf[new_fields]
Nan 교체
보통 사용
pf.fillna(' ')
테이블의 빈 값을 대체합니다(Nan).하지만, fillna () 가 잘 안 될 때가 있다는 것을 발견할 수 있습니다. inplace = True
# inplace=True
pf.fillna(' ', inplace=True)
공식 inplace에 대한 설명inplace : boolean, default False
If True, fill in place. Note: this will modify any other views on this object, (e.g. a no-copy slice for a column in a DataFrame).
전체 열 출력 숨기지 않음
표를 출력할 때 중간 열을 숨기는 경우가 생길 수 있습니다. 첫 번째 열과 마지막 열만 출력하고, 중간은... 으로 대체합니다.
아래의 이 말을 더해서 인쇄하면 전열이 인쇄됩니다.
pd.set_option('display.max_columns', None)
print(pf)
Excel을 사전으로 변환
pf_dict = pf.to_dict(orient='records')
모든 코드
import pandas as pd
pf = pd.read_excel(path, sheet_name='sheet1')
columns_map = {
' 1': 'newname_1',
' 2': 'newname_2',
' 3': 'newname_3',
' 4': 'newname_4',
' 5': 'newname_5',
#
'Unnamed: 10': 'newname_6',
}
new_fields = list(columns_map.values())
pf.drop([' ', ' ', ' '], axis=1, inplace=True)
pf.rename(columns=columns_map, inplace=True)
pf = pf[new_fields]
pf.fillna('Unknown', inplace=True)
# pd.set_option('display.max_columns', None)
# print(smt)
pf_dict = pf.to_dict(orient='records')
추가:python pandas replace 0을 nan, bfill/ffill로 교체0을(를) nan으로 바꿉니다.
일반적으로 0을 nan으로 바꾸면
df.replace(0, None, inplace=True)
그러나 바꿀 수 없다.
df.replace(0, np.nan, inplace=True)
nan을 앞값, 뒷값으로 바꾸기
df.ffill(axis=0) #
df.bfill(axis=0) #
이상의 개인적인 경험으로 여러분께 참고가 되었으면 좋겠습니다. 또한 많은 응원 부탁드립니다.만약 잘못이 있거나 완전한 부분을 고려하지 않으신다면 아낌없이 가르침을 주시기 바랍니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
【Pandas】DatetimeIndex란? no.29안녕하세요, 마유미입니다. Pandas에 대한 기사를 시리즈로 작성하고 있습니다. 이번은 제29회의 기사가 됩니다. 에서 Pandas의 시간에 대한 모듈에 대해 씁니다. 이번 기사에서는, 「DatetimeIndex」...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.