R 개체 속성 식별
데이터 분석에서 우리가 사용하는 함수나 연산자가 일부 객체에서는 작동하지만 다른 객체에서는 작동하지 않는 상황에 직면할 수 있습니다. 이는 함수/연산자가 특정 유형의 개체에서만 작동하기 때문에 발생합니다.
예를 들어 $
연산자는 원자 벡터가 아닌 목록에서 작동합니다.
예제 코드:
# A list.
l = list(one="First", two="Last")
# A vector.
v = c(one="First", two="Last")
l$one # Works.
v$one# Error.
출력:
> l$one # Works.
[1] "First"
> v$one# Error.
Error in v$one : $ operator is invalid for atomic vectors
R 개체 속성 식별
이 문서에서는 작업하는 개체의 다양한 속성을 식별하는 데 도움이 되는 함수를 살펴봅니다.
이 문서에서는 각 기능에 대한 간략한 설명과 예제만 제공합니다. 이러한 기능에 대한 R 문서는 자세한 내용과 예제를 제공합니다.
먼저 R 객체를 생성합니다.
예제 코드:
# Vector of numbers.
vn = c(4, 5, 6, 7)
# Vector of Booleans. (A vector of True False values)
vb <- vn%%2 == 0
# Data frame.
dfr = data.frame(Col1=vn, Col2=vb)
str()
함수
str()
함수는 개체의 내부 구조를 표시합니다. 모든 R 개체에서 작동합니다.
예제 코드:
str(vn)
str(vb)
str(dfr)
출력:
> str(vn)
num [1:4] 4 5 6 7
> str(vb)
logi [1:4] TRUE FALSE TRUE FALSE
> str(dfr)
'data.frame': 4 obs. of 2 variables:
$ Col1: num 4 5 6 7
$ Col2: logi TRUE FALSE TRUE FALSE
typeof()
함수
typeof()
함수는 모든 R 개체의 유형 또는 저장 모드를 표시합니다.
예제 코드:
typeof(vn)
typeof(vb)
typeof(dfr)
출력:
> typeof(vn)
[1] "double"
> typeof(vb)
[1] "logical"
> typeof(dfr)
[1] "list"
클래스()
함수
class()
함수는 R 객체의 class
속성을 표시합니다. 이 개체가 상속하는 클래스의 이름을 나열합니다.
클래스 속성이 없는 개체도 암시적 클래스를 가집니다.
예제 코드:
class(vb)
class(dfr)
# Create a matrix and check its class.
m = matrix(c(1:6), nrow=3)
class(m)
출력:
> class(vb)
[1] "logical"
> class(dfr)
[1] "data.frame"
> class(m)
[1] "matrix" "array"
is.___()
함수
R에는 많은 is.___()
함수가 내장되어 있습니다. 이러한 함수는 개체가 해당 유형인지 여부를 나타내는 부울 값을 반환합니다.
예를 들어 주어진 객체가 벡터, 리스트, 행렬, 배열, 데이터 프레임 등인지 확인할 수 있습니다. 다음 코드에서는 다양한 is.___로 특정 객체를 확인한 결과를 볼 수 있습니다. ()
기능.
예제 코드:
# We will check whether the object vb we created is of any of the following types of object.
is.list(vb)
is.vector(vb)
is.atomic(vb)
is.numeric(vb)
is.matrix(vb)
is.data.frame(vb)
is.array(vb)
출력:
> is.list(vb)
[1] FALSE
> is.vector(vb)
[1] TRUE
> is.atomic(vb)
[1] TRUE
> is.numeric(vb)
[1] FALSE
> is.matrix(vb)
[1] FALSE
> is.data.frame(vb)
[1] FALSE
> is.array(vb)
[1] FALSE
속성()
함수
attributes()
함수는 객체의 속성 목록을 표시합니다.
예제 코드:
# For the list object.
attributes(l)
# For the data frame object.
attributes(dfr)
# For the matrix object.
attributes(m)
출력:
> # For the list object.
> attributes(l)
$names
[1] "a" "z"
> # For the data frame object.
> attributes(dfr)
$names
[1] "Col1" "Col2"
$class
[1] "data.frame"
$row.names
[1] 1 2 3 4
> # For the matrix object.
> attributes(m)
$dim
[1] 3 2
기타 기능
위에서 설명한 기능 외에도 R에는 개체에 대한 자세한 정보를 제공하는 다른 기능이 있습니다. 그 중 일부는 특정 유형의 개체에만 적용됩니다.
보다 일반적으로 사용되는 기능 중 일부는 다음과 같습니다.
dim()
: 개체의 크기를 표시합니다.names()
: 개체 구성 요소의 이름을 표시합니다.summary()
: 통계 모델의 경우 모델 요약을 표시합니다.colnames()
,rownames()
및row.names()
: 행렬과 같은 객체의 열/행 이름을 표시합니다. 데이터 프레임의 경우rownames()
는row.names()
를 호출하고colnames()
는names()
를 호출합니다.