R

[R] paste() 와 file.path() 비교

rubyda 2021. 3. 6. 01:31
728x90

paste() 함수와 file.path() 함수를 비교해 보도록 하겠습니다.

 

흔히 두개는 어떠한 두개의 인자를 받았을때 이어 붙여주는 역할을 하는 함수들로 알려져 있습니다.

 

실제로 한번 간단하게 코딩을해 확인해보도록 하겠습니다.

 

paste("a","b")
file.path("a","b")

[1] "a b"

[1] "a/b"

 

다음과 같이 결과가 나옵니다. 두가지 모두 두개의 인자를 이어 주는 역할을 하지만 그 이어주는 값 즉, separator의 차이가 존재합니다.

 

paste는 separator 기본값을 설정하지 않으면 " " 으로 처리하게 됩니다. 반면에, file.path는 separator 기본값이 "/"으로 처리하게 됩니다. 

 

만약 paste함수로 separator 값을 /로 사용하고 싶다면 다음과 같이 sep 옵션을 사용하면 원하는 결과를 출력할 수 있습니다.

paste("a","b", sep="/")

[1] "a/b"

 

file.path도 마찬가지로 fsep 옵션을 사용해서 다음과 같은 결과를 얻을 수 있습니다.

file.path("a","b", fsep = " ")

[1] "a b"

 

생각을 해본결과 두개의 차이점은 separator 기본값의 차이가 있습니다. 내가 만약 경로설정과 관련한 값이 필요하면 당연 file.path를 사용하는것이 더 효율적입니다. 하지만 경로설정이 아닌 다른 목적으로 사용한다면 두가지 중 아무거나 사용해도 상관이 없는것 같습니다.

 

다른 차이점이 존재할수도 있으니 혹시 공부를 하며 더 알게된점이 있다면 추가하다록 하겠습니다.