작성
·
450
0
안녕하세요
항상 좋은 강의 해주셔서 감사합니다.
df_train.corr()['SalePrice'] 를 실행했더니,
ValueError: could not convert string to float: 'RL'
이런 벨류 에러가 뜹니다.
따라서 인터넷에 찾아보았더니, 'RL'
과 같은 문자열을 실수(float)으로 변환할 수 없다고 하며, 이러한 문자열이 존재하는 열은 데이터 타입이 숫자형이 아닌 문자형(object)일 가능성이 높다고 하는데, 위에서 해당 feature를 봤을 떄는 실수형이던데 왜 이런 오류가 발생하는지 아실까요?
답변 2
0
df_train.select_dtypes(include=[np.number]).corr()['SalePrice']
이렇게 corr 함수 쓰기 이전에 'select_dtypes(include=[np.number])' 함수를 쓰니까 되긴 되네용!
-2
안녕하세요. 답변도우미입니다.
이 문제는 데이터 프레임(df_train) 내에서 숫자가 아닌 값(예: 'RL')이 있는 열이 있어서 발생하는 문제입니다. corr() 함수는 숫자형 데이터에 대해서만 상관 계수를 계산할 수 있기 때문에, 문자열을 포함하는 열은 이 함수를 사용할 수 없습니다.
이 오류를 해결하려면, 문자열을 포함하는 열을 제외하고 corr() 함수를 사용하거나, 문자열을 숫자로 변환해야 하는데요. 해당 데이터에 결측치나, 문자열등의 값이 있는지를 확인해보시면 좋을 것 같습니다.
감사합니다.