[r] R 개체 식별

나는 종종 출력 데이터 유형을 이해하지 못하는 출력을 생성하는 함수로 끝납니다. 나는 목록을 기대하고 있으며 목록이나 데이터 프레임 또는 다른 목록으로 끝납니다. 함수를 처음 사용할 때 출력 데이터 유형을 알아 내기위한 좋은 방법 또는 워크 플로는 무엇입니까?



답변

나는 보통 다음과 같은 조합으로 시작합니다.

typeof(obj)
class(obj)
sapply(obj, class)
sapply(obj, attributes)
attributes(obj)
names(obj)

공개 된 내용에 따라 적절하게. 예를 들어 다음과 같이 시도하십시오.

obj <- data.frame(a=1:26, b=letters)
obj <- list(a=1:26, b=letters, c=list(d=1:26, e=letters))
data(cars)
obj <- lm(dist ~ speed, data=cars)

..기타.

경우 objS3 또는 S4 개체입니다, 당신은 또한 시도 할 수 있습니다 methods또는 showMethods, showClass등 패트릭 번즈 R 지옥은 이것에 꽤 좋은 섹션 (초 # 7)를 갖는다.

편집 : Dirk와 Hadley str(obj)는 답변에서 언급 합니다. 개체를 빠르고 자세히 들여다 볼 수있는 위의 어느 것보다 훨씬 낫습니다.


답변

str(x)

99 %의 경우에 대해 기억해야 할 모든 것입니다.


답변

내가 ‘someObject’를 얻으면 다음을 통해 말하십시오.

someObject <- myMagicFunction(...)

그런 다음 일반적으로

class(someObject)
str(someObject)

가지고있는 클래스에 따라 head (), summary (), print (), …이 뒤따를 수 있습니다.


답변

attributes(someObject) 

유용 할 수도 있습니다.


답변