R의 관측 값 개수 계산

Manav Narula 2021년2월25일
R의 관측 값 개수 계산

실제 상황에서 우리는 많은 양의 데이터를 다룹니다. 이것은 수백 개의 관측치를 초과 할 수 있으며 때로는 전체에서 특정 데이터를 추출해야 할 수도 있습니다.

이러한 상황에서는 필터링 된 데이터의 총 관측치를 계산하는 데 도움이되는 몇 가지 방법이 R에 있습니다. 이 자습서에서는 다음 DataFrame에 대해 작업합니다.

df <- data.frame( gender = c("M","F","M","M"),
                  age = c(18,19,14,22),
                  stream = c("Arts","Science","Arts","Commerce"))
print(df)

출력:

  gender age   stream
1      M  18     Arts
2      F  19  Science
3      M  14     Arts
4      M  22 Commerce

첫 번째 방법은with()sum()함수를 포함합니다.

with()함수는 전체 데이터 세트에 적용한 후 일부 표현식을 기반으로 논리 벡터를 반환하고sum()함수는 모든True 관측 값의 합계를 반환합니다.

다음 코드 스 니펫은 이것이 어떻게 작동하는지 보여줍니다.

df <- data.frame( gender = c("M","F","M","M"),
                  age = c(18,19,14,22),
                  stream = c("Arts","Science","Arts","Commerce"))
                  
sum(with(df,gender == "M"))
[1] 3

&연산자를 사용하여 여러 표현식을 추가 할 수도 있습니다.

sum(with(df,gender == "M" & stream == "Commerce"))
[1] 1

또 다른 방법은 데이터 세트의 행 수를 반환하는nrow()함수를 사용하는 것입니다. 아래와 같이 DataFrame에서 필요한 관찰을 필터링 할 수 있습니다.

nrow(df[df$gender == "M",])
[1] 3

다시 말하지만,with()함수에서하는 것처럼 여러 표현식을 추가 할 수 있습니다.

nrow(df[df$gender == "M" & df$stream == "Commerce",])
[1] 1

dplyr 라이브러리에서 제공하는filer()함수를 사용할 수도 있습니다. 일부 조건에 따라 데이터 하위 집합을 반환합니다. 다음 예는 방법을 설명합니다.

library(dplyr)
nrow(filter(df,gender == "M"))
[1] 3
nrow(filter(df,gender == "M" & stream == "Commerce"))
[1] 1
작가: Manav Narula
Manav Narula avatar Manav Narula avatar

Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.

LinkedIn

관련 문장 - R Data Frame