this 질문에 (주로) 대답하는 과정에서 나는 전에 본적이 있었던 것처럼 느껴지는 것을 발견했습니다. 의 당신이 목록을 가지고 있다고 가정 해 봅시다 :as.character()를 통해 목록에 문자를 강제 할 때이 동작이 왜 발생합니까?
l <- list(a = 1:3, b = letters[1:3], c = runif(3))
다양한 형태 l
을 강요하려고하면 오류 반환 : 그러나
> as.numeric(l)
Error: (list) object cannot be coerced to type 'double'
> as.logical(l)
Error: (list) object cannot be coerced to type 'logical'
을, 나는 분명히 난 그냥, 문자 목록을 강요 할 수있어 이 결과 기대하지 않은 : 나는 문자 목록을 강제 할 수있어 경우, 오히려
> as.character(l)
[1] "1:3"
[2] "c(\"a\", \"b\", \"c\")"
[3] "c(0.874045701464638, 0.0843329173512757, 0.809434881201014)"
을, 내가 생각했을 좀 더 이런 행동을 볼 것 :
나는 두 가지 질문이l <- list(a = c(1,2,3), b = letters[1:3], c = runif(3))
> as.character(l)
[1] "c(1, 2, 3)"
[2] "c(\"a\", \"b\", \"c\")"
[3] "c(0.344991483259946, 0.0492411875165999, 0.625746068544686)"
: 나는 원래을 목록 요소를 지정하는 방법 것을 16,가
> as.character(unlist(l)) [1] "1" "2" "3" "a" "b" [6] "c" "0.874045701464638" "0.0843329173512757" "0.809434881201014"
참고 as.character
의 출력에 영향을
- 방법
as.character
가에서 정보를 준설되어 내 목록 의 원래 창조1:3
대c(1,2,3)
를 침을 뱉기 위하여. - 정확히 어떤 상황에서이를 수행하고 싶습니까? 목록에
as.character()
으로 전화를 걸어이 양식을 출력하고 싶습니다.
아하, 'deparse'는 내 첫 번째 질문의 상당 부분을 설명하는 것 같아요. – joran