해결 방법: strsplit(unitspec, " ") 오류: 문자가 없는 인수
R에서 발생할 수 있는 오류는 다음과 같습니다.
Error in strsplit(df$my_column, split = "1"): non-character argument
이 오류는 일반적으로 작업 중인 개체가 문자열이 아닌 경우 R에서 strsplit() 함수를 사용하여 문자열을 분할하려고 할 때 발생합니다.
이 튜토리얼에서는 이 오류를 수정하는 방법을 정확하게 설명합니다.
오류를 재현하는 방법
R에 다음과 같은 데이터 프레임이 있다고 가정합니다.
#create data frame df <- data. frame (team=c('A', 'B', 'C'), dots=c(91910, 14015, 120215)) #view data frame df team points 1 A 91910 2 B 14015 3 C 120215
이제 숫자 1이 나타나는 위치를 기준으로 “points” 열의 값을 분할하기 위해 strsplit() 함수를 사용한다고 가정해 보겠습니다.
#attempt to split values in points column
strsplit(df$points, split="1")
Error in strsplit(df$points, split = "1"): non-character argument
변수 “points”가 문자가 아니기 때문에 오류가 발생합니다.
이 변수의 클래스를 확인하여 이를 확인할 수 있습니다.
#display class of "points" variable
class(df$points)
[1] "digital"
이 변수에는 숫자 클래스가 있음을 알 수 있습니다.
오류를 수정하는 방법
이 오류를 해결하는 방법은 strsplit() 함수를 사용하기 전에 as.character()를 사용하여 “points” 변수를 문자로 변환하는 것입니다.
#split values in points column based on where 1 appears
strsplit(as. character (df$points), split="1")
[[1]]
[1990"
[[2]]
[1] "" "40" "5"
[[3]]
[1] "" "202" "5"
이번에는 먼저 as.character() 함수를 사용하여 “포인트”를 문자로 변환했기 때문에 “포인트” 열의 각 값을 성공적으로 분할했습니다.
추가 리소스
다음 튜토리얼에서는 R의 다른 일반적인 오류를 해결하는 방법을 설명합니다.
R에서 수정하는 방법: 이름이 이전 이름과 일치하지 않습니다.
R에서 수정하는 방법: 열 이름보다 더 많은 열
R에서 복구하는 방법: 대체에는 X 행이 있고 데이터에는 Y가 있습니다.