엑셀과 파이썬의 연동

작성자
rss로꿈을
작성일
2021-10-24 15:24
조회
570

엑셀 데이터를 파이썬으로 불러와서 가공을 한 이후에 엑셀로 보내는 것에 대해서 여러가지를 시도해 보았습니다.

파이썬에 엑셀을 다루는 라이브러리가 여러가지가 있지만, pandas 와 openpyxl 은 엑셀 시트가 열려 있는 상태에서는 데이터를 엑셀에 쓸수가 없더군요. 이때는 xlwings라는 라이브러리를 이용하면 된다는 것을 알았는데, xlwings는 일종의 addin이더군요. 여러가지 공부를 하면서 addin도 알게되고 그러는데 말입니다....

 

xlwings에서 데이터프레임의 데이터를 엑셀에 저장하면 다른 데이터들은 별문제가 없이 저장이되는데 날짜와 시간 데이터는 데이터 형식이 맞지않는다고 저장을 못하고 에러를 발생을 시키더군요.

 

혹시 고수님들 중에 이런거 경험하고 해결해 보신 분 있으시면 도움구합니다.

부탁드립니다.

스크랩
공유
회원등급 : 4레벨
포인트 : 222 EP
전체 6

  • 2021-10-24 15:42

    @rss로꿈을 님 아래 내용 참고해보세요 ^^ Xlwings 는 필드내 데이터가 하나라도 잘못되면

    변환할 때 날짜/시간형식 지정 시 오류가 발생합니다.다른 DBㅂ도 마찬가지구요. 자세한 내용은 아래 링크를..

    Your dataframe will need to have the column of dtype datetime to correctly format dates in Excel. A mixed column like you have will have dtype object which translates to text in Excel. You can check your dtypes with df.info(). Maybe you are better off with working with a nested list instead of a DataFrame where you can make sure the datatypes are of datetime before writing it to Excel.

    Date format issue while writing data-frame to excel file using xlwings · Issue #1413 · xlwings/xlwings · GitHub


    • 2021-10-26 00:58

      @엑셀은즐거워 님 답변 주셔서 감사합니다.

      하지만 제가 답변의 내용을 잘 이해를 못하겠네요. 첨부해주신 사이트에 들어가서 읽어봐도 질문자에 대한 답변을 그대로 옮겨주신 것 같은데, 영어실력이 부족한 것인지 파이썬에 대한 이해가 부족한 것인지 헷갈리는군요.  알것 같기도하고 그러는데 확실하게 감이 오지 않는게 말입니다. 하여간 주신 답변을 토대로 연구를 좀더 해보겠습니다.

      답변 주셔서 진심으로 감사드립니다.


      • 2021-10-26 04:48

        @rss로꿈을 님 첨언을 조금 드리자면, 날짜/데이터 타입은 엑셀 말고도 DB로 임포트할때 꽤 신경을 써야하는 부분입니다.

        영국, 미국, 한국 각 나라마다 기본 날짜 포맷이 다르기도 하고, 가끔 20210101 처럼 날짜처럼 보이지만 이상하게 입력된 값들도 있고 해서..

        가장 핵심은 날짜 포맷을 올바르게 맞춰줘야만 합니다. 하나라도 다르면 인식 못하는 경우가 종종 생겨요

        답변이 도움이 되셨길..^^


        • 2021-10-27 13:04

          @엑셀은즐거워 님 답변주셔서 감사드립니다.

          부딪친 문제를 해결하기는 했는데, 아직 잘 이해가 안가는군요.

          stack 이라는 사이트에 람다함수를 이용하는 방법이 있어서 그걸로 데이터를 변환하니까 작동을 하더군요. 그전에는 별라별 방법들을 써도 해결이 안되고 에러를 냈었는데 말입니다.

          람다함수를 사용하는 방법도 열에 람다함수를 적용시키면 시리즈는 데이터를 변환할 수 없다고 에러가 나오더군요. 그래서 데이터프레임 전체에 적용을 시켰더니 해결이 되더라는...

          혹시 저와 같은 문제에 부딪치신 분들을 위해서 참고로 코드를 적어 드리면 ...

          아래 코드에서 df['time'] 이라고 열을 입력해도 시리즈는 변환할 수 없다는 에러가 나오더군요.

           
          df = df.applymap(lambda x: str(x) if isinstance(x, datetime.time) else x)


          • 2021-10-27 21:41

            @rss로꿈을 님 오 이런 방법도 있군요 ㅎㅎ

            메모해뒀다가 다음에 한번 써봐야겠네요


  • 2021-11-05 09:36

    @rss로꿈을 님 아..요즘 파이썬도 공부하고 있는데, 엑셀과 연동하면 천하무적이겟네요. 정말 세상엔 배울게 넘 많네요..ㅎㅎ


전체 801
번호 제목 작성자 작성일 추천 조회
알림
🎉다양한 이벤트와 함께 진행하는, PPT 보고서 디자인 특강 안내 - 9/24 (토) 오후 9시~ (15)
오빠두엑셀 | 2022.09.08 | 추천 9 | 조회 2292
오빠두엑셀 2022.09.08 9 2292
공지사항
- 질문글은 Q&A 게시판에 올려주세요 😉 - (3)
오빠두엑셀 | 2021.12.26 | 추천 5 | 조회 719
오빠두엑셀 2021.12.26 5 719
42351
New VBA 활용도에 대해서 (1)
아홉열 | 2022.09.22 | 추천 0 | 조회 34
아홉열 2022.09.22 - 34
42319
New 안녕하세요. 혹시 offline 강의도 있나요~? (2)
리얼에이투지 | 2022.09.21 | 추천 0 | 조회 40
리얼에이투지 2022.09.21 - 40
42283
New 실력업그레이드~ (1)
yhshin | 2022.09.20 | 추천 0 | 조회 41
yhshin 2022.09.20 - 41
42082
CHAPTER 7-3 셀프 퀴즈 교재 참고 페이지 확인 요청. 첨부파일 (3)
jwseo | 2022.09.14 | 추천 0 | 조회 54
jwseo 2022.09.14 - 54
41966
진짜쓰는 실무엑셀 책이란? (5)
벌꽃돈재 | 2022.09.09 | 추천 4 | 조회 152
벌꽃돈재 2022.09.09 4 152
41895
이제 곧 시민개발자의 시대가 올 것 같습니다...^^ (로직 공부 필수) (3)
더블유에이 | 2022.09.06 | 추천 2 | 조회 144
더블유에이 2022.09.06 2 144
41835
수강완료 표시 디폴트 해제 요청 (2)
Kim30 | 2022.09.04 | 추천 1 | 조회 77
Kim30 2022.09.04 1 77
41830
교재구입인증 (3)
갱쓰 | 2022.09.04 | 추천 0 | 조회 77
갱쓰 2022.09.04 - 77
41815
파워 오토메이트 강의!!! (1)
비화돈 | 2022.09.04 | 추천 0 | 조회 83
비화돈 2022.09.04 - 83
41759
8월 라이브 강의 업로드 (1)
할미손 | 2022.09.01 | 추천 0 | 조회 56
할미손 2022.09.01 - 56
41718
제가 엑셀 책이 따로 있다기보다.. (1)
모던스타일 | 2022.08.31 | 추천 1 | 조회 97
모던스타일 2022.08.31 1 97
41616
강의 수강 완료 표시 기능 관련 문의 첨부파일 (4)
jwseo | 2022.08.27 | 추천 1 | 조회 83
jwseo 2022.08.27 1 83
41612
9월 라이브강의 주제가 미정인데. 이런건 어떠신지요? (2)
태극기바람 | 2022.08.27 | 추천 0 | 조회 63
태극기바람 2022.08.27 - 63
41586
저도 교재구매했습니당 (2)
kei9**** | 2022.08.26 | 추천 1 | 조회 58
kei9**** 2022.08.26 1 58
41472
오늘하루도 힘차게 엑셀공부와 함께 시작합시다! (4)
SHIN | 2022.08.23 | 추천 1 | 조회 56
SHIN 2022.08.23 1 56
41426
교재 이거 입문자들도 할수있나요 (2)
핫핫 | 2022.08.21 | 추천 0 | 조회 101
핫핫 2022.08.21 - 101
41413
교재 인증! 첨부파일 (3)
올마스터 | 2022.08.21 | 추천 0 | 조회 73
올마스터 2022.08.21 - 73
41349
교재구매인증 (5)
오복 | 2022.08.19 | 추천 3 | 조회 76
오복 2022.08.19 3 76
41310
오늘도 다들 좋은하루 보내세요^^ (3)
SHIN | 2022.08.18 | 추천 1 | 조회 55
SHIN 2022.08.18 1 55
41278
두구두구,,,,셀렘 (3)
오복 | 2022.08.17 | 추천 1 | 조회 61
오복 2022.08.17 1 61
41277
교재 구매 관련 문의 사항! (2)
SHIN | 2022.08.17 | 추천 1 | 조회 50
SHIN 2022.08.17 1 50
41275
교재 구입 인증 (1)
fabikim | 2022.08.17 | 추천 0 | 조회 53
fabikim 2022.08.17 - 53
41245
오빠두 싸이트에서 certification 진행하는 지난번에 제가 ㅠㅠ 못 받아서요 이런 과정이 또 언제 있고... (1)
Mimi | 2022.08.17 | 추천 0 | 조회 61
Mimi 2022.08.17 - 61
41207
엑셀이나  vbs 기초정도요 certification 받을 수 있는 자격증도 프린트 해서 회사에 제출 할 수 있으면 합니다 (2)
Mimi | 2022.08.16 | 추천 1 | 조회 58
Mimi 2022.08.16 1 58
41191
실무엑셀로 많이 배웁니다만 서식을 좀 더 배울 수 있는 교재나 강의, 기타 내용은 사이트에 없을까요?? (4)
김군 | 2022.08.15 | 추천 0 | 조회 90
김군 2022.08.15 - 90