반응형
주어진 경로에서 엑셀 파일에 데이터 프레임 쓰기
데이터 프레임이 있습니다.
df = pd.DataFrame({'Data': [10, 20, 30, 20, 15, 30, 45]})
효과가 있습니다.
writer = pd.ExcelWriter('pandas_simple.xlsx', engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
writer.save()
하지만 시도해보면,
out_path = "C:\Users\Bala\output\temp-excel.xlsx"
writer = pd.ExcelWriter(out_path , engine='xlsxwriter')
df.to_excel(writer, sheet_name='Sheet1')
writer.save()
오류가 발생합니다.
IOError: [Errno 22] invalid mode ('wb') or filename: 'C:\\Users\\Bala Nadella\\output\temp-excel.xlsx'.
지정된 경로에서 파일을 만들려면 어떻게 해야 합니까?
해당 링크의 표를 검토합니다.당신은 '\'를 '\\'로 이스케이프해야 합니다.부분적으로, 도스는 세상의 이런 혼란에 책임이 있습니다.
out_path = "C:\\Users\\Bala\\output\\temp-excel.xlsx"
또는
out_path = r"C:\Users\Bala\output\temp-excel.xlsx" # the `r` prefix means raw string
그러나 가장 좋은 대안은 다음과 같습니다.
out_path = "C:/Users/Bala/output/temp-excel.xlsx"
모든 플랫폼에서 작동합니다.
다음을 사용하여 솔루션을 제거하도록 편집됨os.path.abspath
이 답변 아래의 댓글을 보고 저는 직접 문서를 읽었고, 그것이 다른 목적을 가지고 있다는 것을 깨달았습니다.과거에 코드 듀얼 OS를 친숙하게 만들기 위해 사용했지만 경로에 CWD를 깔끔하게 추가하고 변경하기 때문입니다./
로.\\
Debian에서 Windows로 또는 그 반대로 이동할 때 사용됩니다.
문자열에서 백슬래시는 이스케이프 문자입니다.일반 캐릭터가 아닌 특별한 명령을 내린다는 뜻입니다.예."Hello\nWorld"
평균, 사이에 새 선을 긋습니다."Hello"
그리고."World"
.
실제로 백슬래시를 문자로 사용하려면 다음과 같이 입력합니다."\\"
.
아니면 그냥 앞으로 슬래시를 사용하는 것이 좋습니다!
언급URL : https://stackoverflow.com/questions/38884164/write-dataframe-to-excel-file-at-given-path
반응형
'programing' 카테고리의 다른 글
사용자 양식 = 빈 사용자 양식에 동적으로 레이블 추가 (0) | 2023.08.25 |
---|---|
테스트 PHP 특성을 단위화하는 방법 (0) | 2023.08.25 |
스프링 JDB성능 측면에서 CTemplate VS 최대 절전 모드 (0) | 2023.08.25 |
iPhone에서 UIView 컨트롤러를 팝업으로 표시 (0) | 2023.08.25 |
연결되지 않은 원격 서버에 대한 Xdebug (0) | 2023.08.25 |