Необходимо подсчитать количество указанного c числа в столбце, с помощью фильтра - PullRequest
0 голосов
/ 02 августа 2020

Я использовал данные из двух наборов данных, которые были частью «nycflights13», и использовал их, чтобы выяснить, какой рейс из определенного аэропорта был самым старым. Теперь мне нужно узнать, сколько самолетов этого типа вылетело из аэропорта. Я не знаю, как это сделать. Я попытался использовать table (), но это дало мне результат 1.

library(nycflights13)

library(conflicted)  
suppressMessages(conflict_prefer("filter", "dplyr"))  
suppressPackageStartupMessages(library(tidyverse)) 

data("flights") 

theflights <- 
   flights %>% 
   filter(origin == "JFK") %>%
   select (tailnum)  

 data("planes") 

 x <- inner_join(theflights, planes) %>%  
  filter(year == min(year, na.rm = T)) %>%  
  select(tailnum) %>%  
  distinct()
x

Вот исходный код для первой части проблемы. Я думаю, причина того, что table () не работает, в том, что я создал x как одно значение. Как узнать, сколько раз этот тип самолета вылетал из указанного c аэропорта?

1 Ответ

0 голосов
/ 02 августа 2020

Я не уверен, правильно ли я понял, но я думаю, это звучит так, будто вы спрашиваете, как получить количество полетов с заданным числом, которое вы сохранили в x, из "JFK"? В этом случае вы можете выполнить фильтрацию на основе этих двух условий, а затем получить количество строк:

library(nycflights13)
library(dplyr)

filter(flights, tailnum == "N381AA" & origin == "JFK") %>% 
  nrow()
#> [1] 22

Создано 02.08.2020 с помощью пакета ( v0.3.0)

...