본문 바로가기

여러 가지 이야기/에러 모음17

FileNotFoundError: [Errno 2] No such file or directory: 'file.xlsx' import pandas as pdpd.read_excel('C:\folder\file.xlsx') FileNotFoundError: [Errno 2] No such file or directory: 'C:\x0colder\x0cile.xlsx'   에러 메세지가 알려주는 그대로 불러오려는 파일이 지정한 경로명에 존재하지 않기에 발생하는 에러입니다 1. 경로명에 오타가 있거나 2. 확장자를 맞게 기입하지 않았거나 3. 해당 경로의 파일이 삭제 등의 이유로 실제 존재하지 않거나 4. 구글코랩으로 내 컴퓨터의 파일을 불러오려고 할 때 위 이유로 주로 발생합니다.   초심자의 경우 4번인 경우 경로명에 분명 파일이 존재하기에 도무지 해결을 못하는 늪에 빠지는데 원래 구글 코랩은 내 컴퓨터의 파일을 그냥 불러올.. 2023. 5. 16.
ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all(). 에러 메세지  ValueError: The truth value of a Series is ambiguous. Use a.empty, a.bool(), a.item(), a.any() or a.all(). 번역: 시리즈의 진릿값은 모호합니다. a.empty, a.bool(), a.item(), a.any() 또는 a.all()을 사용하세요. 이 오류는 판다스 초심자에게 매우 자주 발생하는 에러 중 하나입니다. 여러 가지 원인이 있을 수 있지만 특히, 조건문을 작성할 때 논리 연산을 잘못 사용할 때 빈번하게 발생합니다.  에러 발생 상황  에러가 발생하는 상황을 예시와 함께 살펴보겠습니다.import pandas as pd# 예시 데이터 프레임 생성df = pd.DataFrame( {'name': [.. 2023. 5. 3.
ValueError: Cannot subset columns with a tuple with more than one element. Use a list instead. import pandas as pd df = pd.DataFrame({'name': ['a', 'b', 'a', 'c'], 'colA': [ 3, 2, 5, 1], 'colB': [ 1, 2, 3, 4]}) df 예의 데이터 프레임을 name으로 그룹화 해서 colA와 colB를 모두 합산을 하고 싶다면 아래와 같은 코드를 사용하면 된다 df.groupby('name')[['colA', 'colB']].sum() groupby를 복수의 열에 적용하려면 대괄호 안에 리스트를 넣는 이중 대괄호가 되어야 한다. [['colA', 'colB']] 이것을 단일 대괄호 안에 넣으면 판다스 +2.0 부터 아래의 에러가 발생하니 반드시 이중대괄호에 넣자 df.groupby('name')['colA', 'colB'].s.. 2023. 5. 3.
ValueError: unconverted data remains: 4 import pandas as pd pd.to_datetime('24', format='%H') ValueError: unconverted data remains: 4 %H로 시간 format을 변형할때 24 이상의 시각이 있을 때 발생하는 에러 24를 오버하는 시각이 있는 데이터를 정상적인 datetime으로 바꾸는 법 https://kimpanda.tistory.com/111 참고문헌 : https://stackoverflow.com/questions/61052483/valueerror-unconverted-data-remains-4 2023. 5. 2.
ValueError: ('Lengths must match to compare' ValueError: ('Lengths must match to compare'는 비교 연산에서 양측의 길이가 다를 때 나타나는 에러이다. 다만 아래와 같은 오타가 생성되었을 때도 자주 나타난다.  import pandas as pddata = {'colA': {0: 2, 1: 1, 2: 3}, 'colB': {0: 1, 1: 2, 2: 3}}df = pd.DataFrame(data)     colA와 colB를 비교해보자 df['colA'] > df['colB']  열을 인덱싱해서 간단한 비교연산자를 쓰는 것으로 비교가 가능하다  이 때 df['colA'] 처럼 열을 인덱싱해야 하는데 변수를 빠뜨리고 ['colA']만 입력해도 비교 대상의 길이가 달라지기에 아래와 같은 에러가 난다. ['colA'] >.. 2023. 5. 2.