Wofür steht linear in der linearen Regression?


11

In R, wenn ich schreibe

lm(a ~ b + c + b*c) 

Wäre dies immer noch eine lineare Regression?

Wie mache ich andere Arten der Regression in R? Ich würde mich über eine Empfehlung für Lehrbücher oder Tutorials freuen.


Ich habe versucht, Ihre Frage ein wenig umzuformulieren. Ich fürchte, Sie stellen anscheinend zwei sehr unterschiedliche Fragen. Für das zweite sind viele Ressourcen auf dieser Site verfügbar, aber auch auf CRAN .
Chl

@chl, yeap, danke, ich war nicht klar. Meine Fragen lauten wirklich: Wenn ich LM in R schreibe, versteht R es immer als linear oder versucht, zu einem Modell zu passen, nicht unbedingt zu einer linearen Regression, sondern zu einer Regression?
Suprvisr

Nein, lm()steht für eine lineare Regression. Ihr Modell umfasst drei Parameter (minus den Achsenabschnitt) für b, cund deren Zusammenwirken b:c, das steht b + c + b:coder b*cfür kurze (R folgt Wilkinson-Notation für statistische Modelle). Das Anpassen eines verallgemeinerten linearen Modells (dh wenn die Verknüpfungsfunktion keine Identität ist, wie dies für das oben ausgedrückte lineare Modell der Fall ist) wird durch angefordert glm().
Chl

Antworten:


24

Linear bezieht sich auf die Beziehung zwischen den von Ihnen geschätzten Parametern (z. B. ) und dem Ergebnis (z. B. y i ). Daher ist y = e x β + ϵ linear, y = e β x + ϵ jedoch nicht. Ein lineares Modell bedeutet , dass die Schätzung des Parametervektors geschrieben werden kann β = Σ i w i y i , wobei die { w i }βyichy=exβ+ϵy=eβx+ϵβ^=iwiyi{wi}sind Gewichte, die durch Ihr Schätzverfahren bestimmt werden. Lineare Modelle können algebraisch in geschlossener Form gelöst werden, während viele nichtlineare Modelle durch numerische Maximierung unter Verwendung eines Computers gelöst werden müssen.


6
+1 Insbesondere in einem "linearen Modell" ist die abhängige Variable eine lineare Funktion der Parameter, jedoch nicht unbedingt der Daten. y
whuber

1. ist linear? wirklich - der mit der Potenz von x?
Suprvisr

2
Ja, weil nicht die interessierende Menge ist (die Sie optimieren), sondern β . Somit ist es in β linear . xββ
Bayerj

+1, aber diese Antwort könnte durch Kommentieren der Formel in der Frage verbessert werden.
Naught101

1
Bei einer zweiten Lesung stelle ich fest, dass die zweite Hälfte dieser Antwort "lineares Modell" mit "linearem Schätzer" verwechselt. Die beiden Konzepte sind getrennt und unterschiedlich. Nichtlineare Modelle haben häufig lineare Schätzer, und lineare Modelle können nichtlineare Schätzer haben (z. B. GLMs).
whuber

5

Dieser Beitrag auf minitab.com bietet eine sehr klare Erklärung:

  • Ein Modell ist linear, wenn es in diesem Format geschrieben werden kann:
    • Response = constant + parameter * predictor + ... + parameter * predictor
      • Das heißt, wenn jeder Term (im Modell) entweder eine Konstante oder das Produkt eines Parameters und einer Prädiktorvariablen ist.
    • So beide von diesen sind lineare Modelle:
      • (Dies ist eine gerade Linie)Y=B0+B1X1
      • (Dies ist eine Kurve)Y=B0+B1X12
  • Wenn das Modell nicht mit dem obigen Format ausgedrückt werden kann , ist es nicht linear.
    • Beispiele für nichtlineare Modelle:
      • X B 1 1Y=B0+X1B1
      • Y=B0cos(B1X1)

4

Ich würde vorsichtig sein, wenn ich dies als "R lineare Regression" -Frage gegenüber einer "linearen Regressions" -Frage stelle. Formeln in R enthalten Regeln, die Sie möglicherweise kennen oder nicht kennen. Beispielsweise:

http://wiener.math.csi.cuny.edu/st/stRmanual/ModelFormula.html

Angenommen, Sie fragen, ob die folgende Gleichung linear ist:

a = coeff0 + (coeff1 * b) + (coeff2 * c) + (coeff3 * (b*c))

Die Antwort lautet Ja, wenn Sie eine neue unabhängige Variable zusammenstellen, z.

newv = b * c

Das Einsetzen der obigen newv-Gleichung in die ursprüngliche Gleichung sieht wahrscheinlich so aus, wie Sie es von einer linearen Gleichung erwarten:

a = coeff0 + (coeff1 * b) + (coeff2 * c) + (coeff3 * newv)

In Bezug auf Referenzen kann Google "r Regression" oder was auch immer Sie denken, für Sie funktionieren.


Wie macht das Umbenennen etwas linear? Ich verstehe nicht, wenn die Identität newv = b * c gilt, ist sie überhaupt nicht linear. Ich bin verwirrt.
Bayerj

@bayer: newv ist eine neue Variable. Die neue Gleichung ist eine lineare Funktion von drei Variablen (b, c, newv), wobei die Koeffizienten eine lineare Beziehung liefern. Keine der Gleichungen ist eine lineare Kombination von nur zwei Variablen.
bill_080

@bayer Siehe die Antwort von @Charlie. Im vorliegenden Beispiel sind beide Modelle linear (unabhängig davon, ob R sie als solche betrachtet oder nicht), da in beiden aeine lineare Funktion der vier Koeffizienten ist.
whuber

danke, es macht Sinn ... kann ich einfach eine neue Variable neww als b * c für jeden Fall in der Datenbank (medizinisch) hinzufügen und sie dann als lineare Regression behandeln?
Suprvisr

2

Sie können die lineare Regression als (lineare) Matrixgleichung ausschreiben.

[a1a2a3a4a5...an]=[b1c1b1c1b2c2b2c2b3c3b3c3b4c4b4c4b5c5b5c5...bncnbncn]×[αbαcαbc]+[ϵ1ϵ2ϵ3ϵ4ϵ5...ϵn]

oder wenn Sie dies zusammenbrechen:

a=αbb+αcc+αbcbc+ϵ

bcbca

abcbc


y=aect+bedty=u(ec(tv)+ed(tv))ab


Ich denke, dies ist die beste Antwort, weil sie die Frage Warum statt nur Was beantwortet. Das Antworten mit "Was" führt nicht zu einer besseren Intuition.
Hexatonic
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.