내일배움캠프/TIL

[TIL]241217_알고리즘 코드카타 / Pandas 시작!

dydatablog 2024. 12. 19. 00:14
728x90

짝수의 합

def solution(n):
    int_n = int(n)+1 	#n이라는 값을 숫자 형태로 변환하기 위해 사용된 코드(int). 하지 않을 경우 문자열끼리 덧셈이 발생하거나, 다른 오류가 발생할 수 있다.
    answer = 0
    for i in range(int_n):
        if i % 2 == 0:
            answer = answer + i
    return answer

 

배열의 평균값

def solution(numbers):
    answer = 0
    sum_num = sum(numbers)
    answer = sum_num/len(numbers)
    return answer

 

 

자릿수 더하기

def solution(n):
    answer = 0
    while True:
        answer = answer + n % 10
        n = n // 10
        if n // 10 ==0:
            answer = answer + n % 10
            break
    return answer

 

약수의 합

def solution(n):
    answer = 0
    for i in range(1,n+1):
        if n % i == 0:
            answer = answer + i
        else:
            answer = answer + 0
    return answer

 


Pandas시작..!

VS code에 불러오는 것부터 2시간 가까이 걸렸다... python 특성상 버전이 잘 맞아야 하는데 그 부분이 잘 안맞았는지 pip로 import하는 것부터 에러가 났다. 

https://docs.kanaries.net/ko/topics/Pandas/no-module-named-in-pandas

 

Pandas에서 'No Module Named' 오류 해결: 상세 가이드 – Kanaries

판다스(Pandas)에서 'No module named' 오류를 해결하는 방법에 대해 다양한 방법을 탐색하며, 파이썬 데이터 과학 프로젝트를 위한 상세한 설명과 코드 예제를 제공합니다.

docs.kanaries.net

난 이 중에서 Python-Pandas 호환성에 문제가 있었던 것으로 추정...이라 다음과 같이 Kernel에서 recommend가 아닌 낮은 버전을 사용했더니 해결됐다.(에러날거면 왜 recommend 해준건데...)

 

무사히 실습하던 도중 데이터를 엑셀 파일로 저장하는 과정에서 한번 더 에러 발생...

[실행 코드]

payments2.to_excel("payments2.xlsx", encoding = "UTF-8-SIG", index = False)

[에러 코드]

TypeError: NDFrame.to_excel() got an unexpected keyword argument 'encoding'

 

[에러 이유] : 엑셀파일은 문자 인코딩 방식을 지정할 필요가 없어서 encoding 옵션(인자)을 쓸 수 없다.

 

[수정 코드] : 

payments2.to_excel("payments2.xlsx", index = False)

 

실습은 별거 한거 같지도 않은데 에러 수정에 시간을 다 쏟은 기분이다.

실패도 많이 해보고 에러도 많이 해결해본 사람이 더 강해질거라고 믿고 해야지 뭐!

728x90