Хотите поделиться ссылкой на учебник? Звучит интересно.
cheesus
1
@cheeesus ... Я изучал e-data data mining в R с помощью тематических исследований ... там можно найти еще много таких интересных примеров.
Анкита
Ответы:
193
Дело в правой части <-является formulaобъектом. Он часто используется для обозначения статистической модели, где слева от ~ответа находится ответ, а справа ~- объясняющие переменные. Таким образом, на английском языке вы бы сказали что-то вроде «Вид зависит от длины чашелистика, ширины чашечки, длины лепестка и ширины лепестка» .
myFormula <-Часть этой строки сохраняет формулу в объекте называется , myFormulaтак что вы можете использовать его в других частях R кода.
Другие распространенные виды использования формул в R
Раздел «Формулы» lazyevalвиньетки дает хорошее представление о том, что такое формула
RobinL
82
R определяет оператор ~(тильда) для использования в формулах. Формулы имеют всевозможное применение, но, пожалуй, наиболее распространенным является регрессия:
library(datasets)
lm( myFormula, data=iris)
help("~")или help("formula")научит вас больше.
@Spacedman охватил основы. Давайте обсудим, как это работает.
Во-первых, будучи оператором, обратите внимание, что это по сути ярлык функции (с двумя аргументами):
>`~`(lhs,rhs)
lhs ~ rhs
> lhs ~ rhs
lhs ~ rhs
Это может быть полезно для использования, например, в applyсемейных командах.
Во-вторых, вы можете манипулировать формулой в виде текста :
Наконец, есть несколько полезных трюков с формулами (см. help("formula")Подробнее):
myFormula <- Species ~ .
Например, приведенная выше версия совпадает с исходной версией, поскольку точка означает «все переменные, которые еще не используются». Он просматривает файл data.frame, который вы используете в своем возможном вызове модели, видит, какие переменные существуют в data.frame, но явно не упомянуты в вашей формуле, и заменяет точку этими отсутствующими переменными.
Спасибо за ответ @ Ари Б. Фридман, но последняя строка немного неоднозначна, где вы говорите, что точка означает «все переменные, которые еще не используются». Если бы вы могли проиллюстрировать это дальше.
Анкита
9
@Ankita, «еще не использованный» в данном контексте означает не упомянутый. В Species~., вид является единственной переменной, которая была использована. Следовательно, это зависит от каждой другой переменной в data.frame.
x4nd3r
Я не понимаю myFormula <- Species ~ . . Когда точка все еще будет заменена переменными из data.frame? Не могли бы вы привести пример
Ответы:
Дело в правой части
<-
являетсяformula
объектом. Он часто используется для обозначения статистической модели, где слева от~
ответа находится ответ, а справа~
- объясняющие переменные. Таким образом, на английском языке вы бы сказали что-то вроде «Вид зависит от длины чашелистика, ширины чашечки, длины лепестка и ширины лепестка» .myFormula <-
Часть этой строки сохраняет формулу в объекте называется ,myFormula
так что вы можете использовать его в других частях R кода.Другие распространенные виды использования формул в R
lattice
Пакет использует их , чтобы задать переменные для построения графика . Пакет использует их , чтобы указать панели для черчения . Пакет использует их для нестандартных evaulation .ggplot2
dplyr
источник
lazyeval
виньетки дает хорошее представление о том, что такое формулаR определяет оператор
~
(тильда) для использования в формулах. Формулы имеют всевозможное применение, но, пожалуй, наиболее распространенным является регрессия:help("~")
илиhelp("formula")
научит вас больше.@Spacedman охватил основы. Давайте обсудим, как это работает.
Во-первых, будучи оператором, обратите внимание, что это по сути ярлык функции (с двумя аргументами):
Это может быть полезно для использования, например, в
apply
семейных командах.Во-вторых, вы можете манипулировать формулой в виде текста :
В-третьих, вы можете управлять им как списком :
Наконец, есть несколько полезных трюков с формулами (см.
help("formula")
Подробнее):Например, приведенная выше версия совпадает с исходной версией, поскольку точка означает «все переменные, которые еще не используются». Он просматривает файл data.frame, который вы используете в своем возможном вызове модели, видит, какие переменные существуют в data.frame, но явно не упомянуты в вашей формуле, и заменяет точку этими отсутствующими переменными.
источник
Species~.
, вид является единственной переменной, которая была использована. Следовательно, это зависит от каждой другой переменной в data.frame.myFormula <- Species ~ .
. Когда точка все еще будет заменена переменными из data.frame? Не могли бы вы привести пример