在此處輸入圖片說明
在這張圖中,lm 函式只有呼叫和系數,但如果使用'$',則可以顯示其他屬性。一個函式是如何像這樣顯示部分結果的?
uj5u.com熱心網友回復:
當您輸入時a,它只運行“lm”類的列印方法a(因為class(a)是“lm”)。列印方法可以是任何東西。對列印輸出如何對應于基礎資料沒有要求。
這是為顯示“lm”物件的輸出而呼叫的列印方法
stats:::print.lm
#> function (x, digits = max(3L, getOption("digits") - 3L), ...)
#> {
#> cat("\nCall:\n", paste(deparse(x$call), sep = "\n", collapse = "\n"),
#> "\n\n", sep = "")
#> if (length(coef(x))) {
#> cat("Coefficients:\n")
#> print.default(format(coef(x), digits = digits), print.gap = 2L,
#> quote = FALSE)
#> }
#> else cat("No coefficients\n")
#> cat("\n")
#> invisible(x)
#> }
#> <bytecode: 0x7f8607193f38>
#> <environment: namespace:stats>
由reprex 包(v2.0.1)于 2021 年 11 月 28 日創建
但它也可以是任何東西。您可以定義一個類“my_new_class”,它只列印“zebra”,無論底層資料如何,都可以用于任何物件。
a <- lm(mpg ~ cyl, mtcars)
a
#>
#> Call:
#> lm(formula = mpg ~ cyl, data = mtcars)
#>
#> Coefficients:
#> (Intercept) cyl
#> 37.885 -2.876
class(a)
#> [1] "lm"
print.my_new_class <- function(x) cat('zebra\n')
class(a) <- 'my_new_class'
class(a)
#> [1] "my_new_class"
a
#> zebra
由reprex 包(v2.0.1)于 2021 年 11 月 28 日創建
如果要查看完整輸出,可以手動運行不同的列印方法。完整的輸出雖然很多,這解釋了為什么默認情況下不是全部列印。
a <- lm(mpg ~ cyl, mtcars)
print.default(a)
#> $coefficients
#> (Intercept) cyl
#> 37.88458 -2.87579
#>
#> $residuals
#> Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
#> 0.3701643 0.3701643 -3.5814159 0.7701643
#> Hornet Sportabout Valiant Duster 360 Merc 240D
#> 3.8217446 -2.5298357 -0.5782554 -1.9814159
#> Merc 230 Merc 280 Merc 280C Merc 450SE
#> -3.5814159 -1.4298357 -2.8298357 1.5217446
#> Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
#> 2.4217446 0.3217446 -4.4782554 -4.4782554
#> Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
#> -0.1782554 6.0185841 4.0185841 7.5185841
#> Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
#> -4.8814159 0.6217446 0.3217446 -1.5782554
#> Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
#> 4.3217446 0.9185841 -0.3814159 4.0185841
#> Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
#> 0.9217446 -0.9298357 0.1217446 -4.9814159
#>
#> $effects
#> (Intercept) cyl
#> -113.6497374 -28.5956807 -3.7042540 0.7095969 3.8234479 -2.5904031
#>
#> -0.5765521 -2.1042540 -3.7042540 -1.4904031 -2.8904031 1.5234479
#>
#> 2.4234479 0.3234479 -4.4765521 -4.4765521 -0.1765521 5.8957460
#>
#> 3.8957460 7.3957460 -5.0042540 0.6234479 0.3234479 -1.5765521
#>
#> 4.3234479 0.7957460 -0.5042540 3.8957460 0.9234479 -0.9904031
#>
#> 0.1234479 -5.1042540
#>
#> $rank
#> [1] 2
#>
#> $fitted.values
#> Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
#> 20.62984 20.62984 26.38142 20.62984
#> Hornet Sportabout Valiant Duster 360 Merc 240D
#> 14.87826 20.62984 14.87826 26.38142
#> Merc 230 Merc 280 Merc 280C Merc 450SE
#> 26.38142 20.62984 20.62984 14.87826
#> Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
#> 14.87826 14.87826 14.87826 14.87826
#> Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
#> 14.87826 26.38142 26.38142 26.38142
#> Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
#> 26.38142 14.87826 14.87826 14.87826
#> Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
#> 14.87826 26.38142 26.38142 26.38142
#> Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
#> 14.87826 20.62984 14.87826 26.38142
#>
#> $assign
#> [1] 0 1
#>
#> $qr
#> $qr
#> (Intercept) cyl
#> Mazda RX4 -5.6568542 -35.00178567
#> Mazda RX4 Wag 0.1767767 9.94359090
#> Datsun 710 0.1767767 0.21715832
#> Hornet 4 Drive 0.1767767 0.01602374
#> Hornet Sportabout 0.1767767 -0.18511084
#> Valiant 0.1767767 0.01602374
#> Duster 360 0.1767767 -0.18511084
#> Merc 240D 0.1767767 0.21715832
#> Merc 230 0.1767767 0.21715832
#> Merc 280 0.1767767 0.01602374
#> Merc 280C 0.1767767 0.01602374
#> Merc 450SE 0.1767767 -0.18511084
#> Merc 450SL 0.1767767 -0.18511084
#> Merc 450SLC 0.1767767 -0.18511084
#> Cadillac Fleetwood 0.1767767 -0.18511084
#> Lincoln Continental 0.1767767 -0.18511084
#> Chrysler Imperial 0.1767767 -0.18511084
#> Fiat 128 0.1767767 0.21715832
#> Honda Civic 0.1767767 0.21715832
#> Toyota Corolla 0.1767767 0.21715832
#> Toyota Corona 0.1767767 0.21715832
#> Dodge Challenger 0.1767767 -0.18511084
#> AMC Javelin 0.1767767 -0.18511084
#> Camaro Z28 0.1767767 -0.18511084
#> Pontiac Firebird 0.1767767 -0.18511084
#> Fiat X1-9 0.1767767 0.21715832
#> Porsche 914-2 0.1767767 0.21715832
#> Lotus Europa 0.1767767 0.21715832
#> Ford Pantera L 0.1767767 -0.18511084
#> Ferrari Dino 0.1767767 0.01602374
#> Maserati Bora 0.1767767 -0.18511084
#> Volvo 142E 0.1767767 0.21715832
#> attr(,"assign")
#> [1] 0 1
#>
#> $qraux
#> [1] 1.176777 1.016024
#>
#> $pivot
#> [1] 1 2
#>
#> $tol
#> [1] 1e-07
#>
#> $rank
#> [1] 2
#>
#> attr(,"class")
#> [1] "qr"
#>
#> $df.residual
#> [1] 30
#>
#> $xlevels
#> named list()
#>
#> $call
#> lm(formula = mpg ~ cyl, data = mtcars)
#>
#> $terms
#> mpg ~ cyl
#> attr(,"variables")
#> list(mpg, cyl)
#> attr(,"factors")
#> cyl
#> mpg 0
#> cyl 1
#> attr(,"term.labels")
#> [1] "cyl"
#> attr(,"order")
#> [1] 1
#> attr(,"intercept")
#> [1] 1
#> attr(,"response")
#> [1] 1
#> attr(,".Environment")
#> <environment: R_GlobalEnv>
#> attr(,"predvars")
#> list(mpg, cyl)
#> attr(,"dataClasses")
#> mpg cyl
#> "numeric" "numeric"
#>
#> $model
#> mpg cyl
#> Mazda RX4 21.0 6
#> Mazda RX4 Wag 21.0 6
#> Datsun 710 22.8 4
#> Hornet 4 Drive 21.4 6
#> Hornet Sportabout 18.7 8
#> Valiant 18.1 6
#> Duster 360 14.3 8
#> Merc 240D 24.4 4
#> Merc 230 22.8 4
#> Merc 280 19.2 6
#> Merc 280C 17.8 6
#> Merc 450SE 16.4 8
#> Merc 450SL 17.3 8
#> Merc 450SLC 15.2 8
#> Cadillac Fleetwood 10.4 8
#> Lincoln Continental 10.4 8
#> Chrysler Imperial 14.7 8
#> Fiat 128 32.4 4
#> Honda Civic 30.4 4
#> Toyota Corolla 33.9 4
#> Toyota Corona 21.5 4
#> Dodge Challenger 15.5 8
#> AMC Javelin 15.2 8
#> Camaro Z28 13.3 8
#> Pontiac Firebird 19.2 8
#> Fiat X1-9 27.3 4
#> Porsche 914-2 26.0 4
#> Lotus Europa 30.4 4
#> Ford Pantera L 15.8 8
#> Ferrari Dino 19.7 6
#> Maserati Bora 15.0 8
#> Volvo 142E 21.4 4
#>
#> attr(,"class")
#> [1] "lm"
由reprex 包(v2.0.1)于 2021 年 11 月 28 日創建
uj5u.com熱心網友回復:
您可以使用summary來查看更多的結果lm。
summary(a)
示例(取自本示例)
#Anscombe's Quartet Q1 Data
y=c(8.04,6.95,7.58,8.81,8.33,9.96,7.24,4.26,10.84,4.82,5.68)
x1=c(10,8,13,9,11,14,6,4,12,7,5)
#Some fake data, set the seed to be reproducible.
set.seed(15)
x2=sqrt(y) rnorm(length(y))
model=lm(y~x1 x2)
summary(model)
輸出
Call:
lm(formula = y ~ x1 x2)
Residuals:
Min 1Q Median 3Q Max
-1.69194 -0.61053 -0.08073 0.60553 1.61689
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.8278 1.7063 0.485 0.64058
x1 0.5299 0.1104 4.802 0.00135 **
x2 0.6443 0.4017 1.604 0.14744
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.141 on 8 degrees of freedom
Multiple R-squared: 0.7477, Adjusted R-squared: 0.6846
F-statistic: 11.85 on 2 and 8 DF, p-value: 0.004054
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/368964.html
上一篇:函式未被識別f#
下一篇:(Python)本地化變數
