Форматы данных входов для организации функции в dplyr - PullRequest
0 голосов
/ 16 мая 2019

Для таблицы monkeys со столбцом brain_size можно написать что-то вроде arrange(monkeys, brain_size).

Я не понимаю, как это имеет смысл - brain_size не объявлена ​​переменная (если я обращаюсь к ней, я получаю ошибку).Это просто название столбца - разве вы не должны иметь arrange(monkeys, 'brain_size')? Не является ли имя столбца просто строкой?

Еще одна странность -

arrange(monkeys, desc(brain_size))

Еще раз, что именно является desc функция ?Как это может принять brain_size в качестве входа?Разве у тебя не должно быть что-то вроде arrange(monkeys, 'brain_size', desc = true)?

Я что-то упустил?Возможно, brain_size является переменной в некотором роде, но доступ к ней можно получить только тогда, когда вы однозначно «внутри» monkeys.

1 Ответ

0 голосов
/ 16 мая 2019

Глаголы dplyr ожидают ввода фрейма данных и будут оценивать имена столбцов без кавычек.Функции сначала будут искать в ваших данных столбец с таким именем (без кавычек), а затем искать в глобальной среде, если совпадения не было.Функция with() в базовой функции R аналогичным образом принимает имена столбцов без кавычек with(mpg, mean(displ))

desc() - это еще один глагол dplyr, предназначенный для изменения столбцов в arrange().Обратите внимание на экономию:

my_long_table_name <- mpg

my_long_table_name[order(my_long_table_name$displ, decreasing = TRUE),]

my_long_table_name %>% 
  arrange(desc(displ))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...