R에서 strsplit() 함수를 사용하는 방법은 무엇입니까?
프로그래머로서 수많은 문자열을 작업해야 할 수도 있습니다. 매우 자주 연결 및 분할을 수행합니다. R에는 strsplit() 함수가 있습니다. 이전 기사에서 strsplit()을 사용하여 문자열 벡터에 대해 논의했습니다.
strsplit()은 입력 문자열 벡터를 하위 문자열로 분할하는 예외적인 R 함수입니다. 이 함수가 어떻게 작동하는지 그리고 strsplit()을 사용하여 R에서 문자열 분할을 수행하는 모든 방법이 무엇인지 봅시다.
Strsplit() 함수 구문
Strsplit(): 분할 인수를 사용하여 문자열을 하위 문자열로 분할하는 데 사용되는 R 언어 함수입니다.
strsplit(x,split,fixed=T)
어디:
- X=입력 데이터 파일, 벡터 또는 스팅.
- 분할 = 문자열을 필요한 형식으로 분할합니다.
- 고정 = 분할과 일치하거나 정규식을 사용합니다.
R에서 strsplit() 함수 사용 - 구현
이 섹션에서는 strsplit() 함수의 사용 사례를 보여주는 간단한 예를 살펴보겠습니다. 이 경우 strsplit() 함수는 주어진 입력을 문자열 또는 값 목록으로 분할합니다.
어떻게 작동하는지 봅시다.
df<-("R is the statistical analysis language")
strsplit(df, split = " ")
출력 =
"R" "is" "the" "statistical" "analysis" "language"
해냈습니다! 이러한 방식으로 데이터에 있는 문자열을 쉽게 분할할 수 있습니다. strsplit() 함수의 가장 좋은 사용 사례 중 하나는 단어 구름을 플로팅하는 것입니다. 가장 인기 있거나 반복되는 단어를 표시하려면 수많은 단어 문자열이 필요합니다. 따라서 데이터에서 문자열을 가져오기 위해 문자열 목록을 반환하는 이 함수를 사용합니다.
1. 구분 기호와 함께 strsplit() 함수 사용
일반적으로 구분 기호는 데이터의 단어나 텍스트를 구분하는 간단한 기호, 문자 또는 값입니다. 이 섹션에서는 다양한 기호를 구분 기호로 사용하는 방법을 살펴보겠습니다.
df<-"get%better%every%day"
strsplit(df,split = '%')
출력 =
"get" "better" "every" "day"
이 경우 입력 텍스트에는 구분 기호로 %가 있습니다. 이제 우리의 관심사는 구분 기호를 제거하고 텍스트를 문자열 목록으로 가져오는 것입니다. strsplit() 함수는 여기에서 동일한 작업을 수행했습니다. 구분 기호를 제거하고 문자열을 목록으로 반환했습니다.
2. 정규식 구분 기호가 있는 strsplit() 함수
이 섹션에서는 정규식을 사용하여 텍스트를 분할하는 방법을 살펴보겠습니다. 재미있을 것 같나요? 해보자.
df<-"all16i5need6is4a9long8vacation"
strsplit(df,split = "[0-9]+")
출력 =
"all" "i" "need" "is" "a" "long" "vacation"
이 예에서 입력에는 0-9 사이의 숫자가 있습니다. 따라서 정규식을 [0-9]+로 사용하여 숫자를 제거하여 데이터를 분할했습니다. strsplit() 함수는 위에 표시된 대로 문자열 목록을 출력으로 반환합니다.
3. 입력 문자열의 각 문자 분할
지금까지 주어진 문자열을 분할하는 다양한 유형을 살펴보았습니다. 이제 문자열의 모든 문자를 분할하려면 어떻게 해야 합니까? 글쎄, 우리는 각 문자를 추출하기 위해 다른 분할 인수와 함께 strsplit() 함수를 사용합니다.
어떻게 작동하는지 봅시다.
df<-"You can type q() in Rstudio to quit R"
strsplit(df,split="")
출력 =
"Y" "o" "u" " " "c" "a" "n" " " "t" "y" "p" "e" " " "q" "(" ")" " " "i"
"n" " " "R" "s" "t" "u" "d" "i" "o" " " "t" "o" " " "q" "u" "i" "t" " "
"R"
4. R에서 strsplit() 함수를 사용하여 날짜 분할
strsplit() 함수의 또 다른 최상의 응용 프로그램은 날짜를 분할하는 것입니다. 이 사용 사례는 매우 훌륭하고 해볼 가치가 있습니다. 이 섹션에서는 이것이 어떻게 작동하는지 살펴보겠습니다.
test_dates<-c("24-07-2020","25-07-2020","26-07-2020","27-07-2020","28-07-2020")
test_mat<-strsplit(test_dates,split = "-")
test_mat
출력 =
"24" "07" "2020"
"25" "07" "2020"
"26" "07" "2020"
"27" "07" "2020"
"28" "07" "2020"
보기 좋은 출력물이 보이시죠? 이 기능을 사용하면 입력 문자열이나 데이터에서도 수많은 분할을 만들 수 있습니다. 날짜를 행렬 형식으로 변환할 수도 있습니다.
matrix(unlist(test_mat),ncol=3,byrow=T)
출력 =
[,1] [,2] [,3]
[1,] "24" "07" "2020"
[2,] "25" "07" "2020"
[3,] "26" "07" "2020"
[4,] "27" "07" "2020"
[5,] "28" "07" "2020"
분할 데이터에서 행렬을 만든 위의 결과를 볼 수 있습니다. 데이터를 정리하는 것은 향후 프로세스에 매우 중요합니다. 단순히 텍스트를 분할하는 것은 위의 샘플과 같이 신뢰할 수 있는 형식으로 변환되거나 구성되지 않는 한 의미가 없습니다.
결론
글쎄, 우리는 기사의 끝 부분에 있으며 이제 R에서 strsplit() 함수의 작동 및 사용 사례에 대해 더 잘 이해하기를 바랍니다. 이 함수는 문자열 분할 측면에서 널리 사용되며 가장 많이 사용됩니다. 지금은 여기까지입니다. 다음 날 또 다른 기능으로 돌아오겠습니다.
추가 학습: R 설명서