일부 조커는 우리 회사에서 엔지니어링 문제를 추적하기 위해 Lotus 데이터베이스/애플릿을 만들었습니다. 농담은 정보의 핵심 부분이 특수 문자 ... 숫자 기호 (해쉬 태그, 파운드 기호, \ u0023)로 명명되었다는 것입니다.팬더 데이터 프레임 열 이름 : 특별한 charater 제거
약칭 샘플 : 팬더 등 dataframe python3에 CSV 파일 및 프로세스
KA# Issue Date Current Position
27144 1/9/2014 Accounting
27194 12/20/2012 Engineering
32474 4/21/2008 Engineering
32623-HOLD 4/25/2016 Engineering
32745 11/13/2012 SEPE
32812 10/30/2013 Engineering
32817 12/7/2012 Purchasing
32839 1/8/2013 SEPE
I 출력이 테이블 (4K 행 15 열).
다양한 출력을 생성합니다. 내가 좋아하는 뭔가를 사용하는 경우 :
df.iloc[:,[0,3,1,8,9,10]]
을 나는 적절한 출력을 얻을과 키 열은 "KA#"
로 표시됩니다. ("키 열"이라고 할 때, "가장 중요한"... "색인"이 아님을 의미합니다.) 일련 번호를 유지합니다.
불행히도 사람들은 때때로 CSV에 대한 내 내보내기 "KA#"
이 특정 열 번호라는 것을 보장 할 수는 없습니다. 나는 열 이름을 사용하고 싶습니다 :
df.loc[:,["KA#","Issue Date","Current Position"]]
그러나 "KA#"
열은 NaN이의 가득합니다.
도움을 주셔서 감사합니다. 내가 이름을 변경하려고하면
마지막으로, "KA#"
단순히 "KA"
합니다 :
df['KA#'].name = 'KA'
는 KeyError를하고
df = df.rename(columns={"KA#": "ka"})
완전히 무시가 발생합니다. 열은
"KA#"
으로 표시됩니다.
누구나 그 심볼을 제거하거나 처리 할 수있는 방법을 생각할 수 있습니까? 나는 심지어이 시점에서 정규 표현식에 정착한다.
도움을 주셔서 감사합니다.
그리고 특히이 결과를'df.columns'에 할당하십시오. – chrisaycock
예.이 문서에서 확인할 수 있습니다. – shivsn
부적절한 문자가있는 열이 하나 뿐이므로 문제가 해결되었습니다. 그러므로 "대답했다". 그리고 시브 슨에게 "고마워." 특정 열을 대상으로 지정하려는 경우이 방법은 다소 번거 롭습니다. 나는 내가 그것에 도착했을 때 내가 그것에 관해 걱정할 것이다라고 생각한다. –