작성
·
40
0
안녕하세요 거친코딩님!
우선 강의 너무 재밌게 잘 듣고 있습니다.
섹션 1의 마지막 강의를 듣다가 오류가 발생하는데 무엇이 원인인지 잘 모르겠어서 질문드립니다.
해당 강의 11분 50초에서 설명해주시는 nan_abalone_df.mean()
을 하면 자꾸 타입에러가 발생합니다
TypeError Traceback (most recent call last)
<ipython-input-138-677ba292c7ae> in <cell line: 1>()
----> 1 nan_abalone_df.mean()
/usr/local/lib/python3.10/dist-packages/pandas/core/nanops.py in _ensure_numeric(x)
1676 if inferred in ["string", "mixed"]:
1677 # GH#44008, GH#36703 avoid casting e.g. strings to numeric
-> 1678 raise TypeError(f"Could not convert {x} to numeric")
1679 try:
1680 x = x.astype(np.complex128)
TypeError: Could not convert ['MMFMIIFFMFFMMFFMIFMMMIFFFFFMMMMFMFFMFFFMFFIIIIMFIFIMMFMFMMIFMMFMMMFFFIMFFMFFMFFFFMFMMFMMFFMMMFMMMMMFIMMMMFFFFFMMIMFFFMFMFIFMIIIIMMMFFIIFFMFMFFMMMFMIIIMFFFFMFMFFMFMFFMFFMFMFMFIIIIIMMMFFFMFFFFMMMIFMFMMMFMFFMFIIFIFMFMFMMIMFFFFFIFFIFFMMMIIIIIIIMIIIIIIIIIIMFFMMMMFFFFMIMFMMMFFMMMMMFMMFFIFMMFMFMFMFMFMIIIMMFFMMFIIMMMFMMFMIFMFIIIMIMIIMMIMFIIFMMMMFMFMFFMFIIMFFMMMMMFMFMFFFFMMFMFFFFFMFMFMFMMMMMFMMMIIMFIIIFMMMFMFFIFMMMMMMFMFFFMFMFIFIIMFMFFFMMMIMIIMMIIFIFFMMMFMFFFFMFIIFMFIIIIFMFMFFIFFMFMMMFMMFMFMFMFMMFMMFFFFMFFFFFMMMMIIFFMFMMMMFMFIMMMMFFMIFIFIIIMMFFFMMFMMMFIIIIIIIIFFIFIFFFMIIMFIIFFIFIFIFFIFIFIIFMFIFIFMIFIIFIFFIIIMIMMFMMIIMFMMMMIFFIFFFIMIFMIMMMMIFMIFMMIMMIFMIIMFMFFIFIIFFIFMFMFMFFMFFMFFFIMFMMMFFMMMIFMIIIMFFMFFMMMMFMIIMIMMIIIIIIMMMMFMFMFMMMMMMMFMMMFFFMFFMMMFMFFMMMFMMMFFMFMFMFFFIMMMMMMMFMMMIIMFMFFFFMMMMMMMFMMMIMMIFFFMFIIIIIIIIIIIIIIIIIIMIIIIIMIFIMFMMMMFFFMFMMMMFMMFFFFMFMFMFFMMFMFFMMFFFMMMMMFFFFFFMIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIFIIIIIIIIIIIIFMFMFMMMMFMMMMIMMFIMIMIIMMFMFMFFMFMMFFFFMMFMMMFFFMFMMMFFFMFMFMMMMFFFMFFFMFMMMMFFFMMFMFFMMMFFFMMFMFFMMMFFMMFFMIIIIIIIIIIIIIIIIIIIIIIIIIIIMIIIIIIIIIIIIMIIIIMIIIMFIFIIIMIIFIIMIIIIMMMFFMMMFMMMFMFIFFMFMIMMMMMMMFMMMFMFMFMMFMMMMFFMMFFMMMFMMFFMMFFMIFFMFMFMMMFFFMMFFMMFMMFFMFIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIFIIIFIIIIIIIIIIIIMIMIIIIIIIIIIIIIMIIIIIIFMFIIFIIIFMIIMIIIIIFIIFMMIIFMIMFFMMMFMMIMMMMIMMFFMMIFFMIMIFFMMMIMMFMMFMMFMMFFMFFFFIMIMMFFMMMMMMMFFMMFFMFMFFFFFMMFFMMFFFMFFFFFFIIIIIIIIIIIIIIMIIIMIMIIIII...
강의를 다시 돌려보고 거친코딩님과 똑같이 코드를 쳤는데 자꾸 저 부분에서 오류가 발생하네요.
nan_abalone.df의 성별 열이 문자라서 mean함수를 호출할 수 없는 것일까요? 근데 왜 선생님 강의에서는 성별 컬럼이 존재해도 mean이 실행이 될까요..
저 부분이 안되니 당연히 nan_abalone_df.fillna(nan_abalone_df.mean())
도 안되네요.. 똑같은 타입에러를 일으킵니다
아직 데이터 전처리 걸음마단계라 미숙하지만 잘 부탁드립니다..!
좋은 강의 감사합니다
답변 1
0
안녕하세요.
일단 먼저 데이터프레임의 경우,
문자열이 있더라도 연산이 가능한컬럼(int, float형)만 감지해서 찾아서 연산하도록 설계되어있습니다.
해당 에러의 원인을 저도 질문자님의 전체 코드를 확인한 것이 아니라, 정확한 원인은 찾기 어렵네요..
감사합니다.