| |
| R version 3.6.2 Patched (2020-02-12 r77795) -- "Dark and Stormy Night" |
| Copyright (C) 2020 The R Foundation for Statistical Computing |
| Platform: x86_64-pc-linux-gnu (64-bit) |
| |
| R is free software and comes with ABSOLUTELY NO WARRANTY. |
| You are welcome to redistribute it under certain conditions. |
| Type 'license()' or 'licence()' for distribution details. |
| |
| R is a collaborative project with many contributors. |
| Type 'contributors()' for more information and |
| 'citation()' on how to cite R or R packages in publications. |
| |
| Type 'demo()' for some demos, 'help()' for on-line help, or |
| 'help.start()' for an HTML browser interface to help. |
| Type 'q()' to quit R. |
| |
| > ## For examples skipped in testing because they need recommended packages. |
| > |
| > ## This is skipped entirely on a Unix-alike if recommended packages are, |
| > ## so for Windows |
| > if(!require("MASS")) q() |
| Loading required package: MASS |
| > |
| > pdf("reg-examples-3.pdf", encoding = "ISOLatin1.enc") |
| > |
| > ## From datasets |
| > if(require("survival")) { |
| + model3 <- clogit(case ~ spontaneous+induced+strata(stratum), data = infert) |
| + print(summary(model3)) |
| + detach("package:survival", unload = TRUE) # survival (conflicts) |
| + } |
| Loading required package: survival |
| Call: |
| coxph(formula = Surv(rep(1, 248L), case) ~ spontaneous + induced + |
| strata(stratum), data = infert, method = "exact") |
| |
| n= 248, number of events= 83 |
| |
| coef exp(coef) se(coef) z Pr(>|z|) |
| spontaneous 1.9859 7.2854 0.3524 5.635 1.75e-08 *** |
| induced 1.4090 4.0919 0.3607 3.906 9.38e-05 *** |
| --- |
| Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 |
| |
| exp(coef) exp(-coef) lower .95 upper .95 |
| spontaneous 7.285 0.1373 3.651 14.536 |
| induced 4.092 0.2444 2.018 8.298 |
| |
| Concordance= 0.776 (se = 0.044 ) |
| Likelihood ratio test= 53.15 on 2 df, p=3e-12 |
| Wald test = 31.84 on 2 df, p=1e-07 |
| Score (logrank) test = 48.44 on 2 df, p=3e-11 |
| |
| > |
| > |
| > ## From grDevices |
| > x1 <- matrix(rnorm(1e3), ncol = 2) |
| > x2 <- matrix(rnorm(1e3, mean = 3, sd = 1.5), ncol = 2) |
| > x <- rbind(x1, x2) |
| > |
| > dcols <- densCols(x) |
| > graphics::plot(x, col = dcols, pch = 20, main = "n = 1000") |
| > |
| > |
| > ## From graphics: |
| > ## A largish data set |
| > set.seed(123) |
| > n <- 10000 |
| > x1 <- matrix(rnorm(n), ncol = 2) |
| > x2 <- matrix(rnorm(n, mean = 3, sd = 1.5), ncol = 2) |
| > x <- rbind(x1, x2) |
| > |
| > oldpar <- par(mfrow = c(2, 2)) |
| > smoothScatter(x, nrpoints = 0) |
| > smoothScatter(x) |
| > |
| > ## a different color scheme: |
| > Lab.palette <- colorRampPalette(c("blue", "orange", "red"), space = "Lab") |
| > smoothScatter(x, colramp = Lab.palette) |
| > |
| > ## somewhat similar, using identical smoothing computations, |
| > ## but considerably *less* efficient for really large data: |
| > plot(x, col = densCols(x), pch = 20) |
| > |
| > ## use with pairs: |
| > par(mfrow = c(1, 1)) |
| > y <- matrix(rnorm(40000), ncol = 4) + 3*rnorm(10000) |
| > y[, c(2,4)] <- -y[, c(2,4)] |
| > pairs(y, panel = function(...) smoothScatter(..., nrpoints = 0, add = TRUE)) |
| > |
| > par(oldpar) |
| > |
| > |
| > ## From stats |
| > # alias.Rd |
| > op <- options(contrasts = c("contr.helmert", "contr.poly")) |
| > npk.aov <- aov(yield ~ block + N*P*K, npk) |
| > alias(npk.aov) |
| Model : |
| yield ~ block + N * P * K |
| |
| Complete : |
| (Intercept) block1 block2 block3 block4 block5 N1 P1 K1 N1:P1 |
| N1:P1:K1 0 1 1/3 1/6 -3/10 -1/5 0 0 0 0 |
| N1:K1 P1:K1 |
| N1:P1:K1 0 0 |
| |
| > options(op) # reset |
| > |
| > # as.hclust.Rd |
| > if(require("cluster", quietly = TRUE)) {# is a recommended package |
| + set.seed(123) |
| + x <- matrix(rnorm(30), ncol = 3) |
| + hc <- hclust(dist(x), method = "complete") |
| + ag <- agnes(x, method = "complete") |
| + hcag <- as.hclust(ag) |
| + ## The dendrograms order slightly differently: |
| + op <- par(mfrow = c(1,2)) |
| + plot(hc) ; mtext("hclust", side = 1) |
| + plot(hcag); mtext("agnes", side = 1) |
| + detach("package:cluster") |
| + } |
| > |
| > # confint.Rd |
| > counts <- c(18,17,15,20,10,20,25,13,12) |
| > outcome <- gl(3, 1, 9); treatment <- gl(3, 3) |
| > glm.D93 <- glm(counts ~ outcome + treatment, family = poisson()) |
| > confint(glm.D93) |
| Waiting for profiling to be done... |
| 2.5 % 97.5 % |
| (Intercept) 2.6958215 3.36655581 |
| outcome2 -0.8577018 -0.06255840 |
| outcome3 -0.6753696 0.08244089 |
| treatment2 -0.3932548 0.39325483 |
| treatment3 -0.3932548 0.39325483 |
| > confint.default(glm.D93) # based on asymptotic normality} |
| 2.5 % 97.5 % |
| (Intercept) 2.7095672 3.37947764 |
| outcome2 -0.8505027 -0.05800787 |
| outcome3 -0.6707552 0.08478093 |
| treatment2 -0.3919928 0.39199279 |
| treatment3 -0.3919928 0.39199279 |
| > |
| > # contrasts.Rd |
| > utils::example(factor) |
| |
| factor> (ff <- factor(substring("statistics", 1:10, 1:10), levels = letters)) |
| [1] s t a t i s t i c s |
| Levels: a b c d e f g h i j k l m n o p q r s t u v w x y z |
| |
| factor> as.integer(ff) # the internal codes |
| [1] 19 20 1 20 9 19 20 9 3 19 |
| |
| factor> (f. <- factor(ff)) # drops the levels that do not occur |
| [1] s t a t i s t i c s |
| Levels: a c i s t |
| |
| factor> ff[, drop = TRUE] # the same, more transparently |
| [1] s t a t i s t i c s |
| Levels: a c i s t |
| |
| factor> factor(letters[1:20], labels = "letter") |
| [1] letter1 letter2 letter3 letter4 letter5 letter6 letter7 letter8 |
| [9] letter9 letter10 letter11 letter12 letter13 letter14 letter15 letter16 |
| [17] letter17 letter18 letter19 letter20 |
| 20 Levels: letter1 letter2 letter3 letter4 letter5 letter6 letter7 ... letter20 |
| |
| factor> class(ordered(4:1)) # "ordered", inheriting from "factor" |
| [1] "ordered" "factor" |
| |
| factor> z <- factor(LETTERS[3:1], ordered = TRUE) |
| |
| factor> ## and "relational" methods work: |
| factor> stopifnot(sort(z)[c(1,3)] == range(z), min(z) < max(z)) |
| |
| factor> ## Don't show: |
| factor> of <- ordered(ff) |
| |
| factor> stopifnot(identical(range(of, rev(of)), of[3:2]), |
| factor+ identical(max(of), of[2])) |
| |
| factor> ## End(Don't show) |
| factor> |
| factor> ## suppose you want "NA" as a level, and to allow missing values. |
| factor> (x <- factor(c(1, 2, NA), exclude = NULL)) |
| [1] 1 2 <NA> |
| Levels: 1 2 <NA> |
| |
| factor> is.na(x)[2] <- TRUE |
| |
| factor> x # [1] 1 <NA> <NA> |
| [1] 1 <NA> <NA> |
| Levels: 1 2 <NA> |
| |
| factor> is.na(x) |
| [1] FALSE TRUE FALSE |
| |
| factor> # [1] FALSE TRUE FALSE |
| factor> |
| factor> ## More rational, since R 3.4.0 : |
| factor> factor(c(1:2, NA), exclude = "" ) # keeps <NA> , as |
| [1] 1 2 <NA> |
| Levels: 1 2 <NA> |
| |
| factor> factor(c(1:2, NA), exclude = NULL) # always did |
| [1] 1 2 <NA> |
| Levels: 1 2 <NA> |
| |
| factor> ## exclude = <character> |
| factor> z # ordered levels 'A < B < C' |
| [1] C B A |
| Levels: A < B < C |
| |
| factor> factor(z, exclude = "C") # does exclude |
| [1] <NA> B A |
| Levels: A < B |
| |
| factor> factor(z, exclude = "B") # ditto |
| [1] C <NA> A |
| Levels: A < C |
| |
| factor> ## Now, labels maybe duplicated: |
| factor> ## factor() with duplicated labels allowing to "merge levels" |
| factor> x <- c("Man", "Male", "Man", "Lady", "Female") |
| |
| factor> ## Map from 4 different values to only two levels: |
| factor> (xf <- factor(x, levels = c("Male", "Man" , "Lady", "Female"), |
| factor+ labels = c("Male", "Male", "Female", "Female"))) |
| [1] Male Male Male Female Female |
| Levels: Male Female |
| |
| factor> #> [1] Male Male Male Female Female |
| factor> #> Levels: Male Female |
| factor> |
| factor> ## Using addNA() |
| factor> Month <- airquality$Month |
| |
| factor> table(addNA(Month)) |
| |
| 5 6 7 8 9 <NA> |
| 31 30 31 31 30 0 |
| |
| factor> table(addNA(Month, ifany = TRUE)) |
| |
| 5 6 7 8 9 |
| 31 30 31 31 30 |
| > fff <- ff[, drop = TRUE] # reduce to 5 levels. |
| > contrasts(fff) <- contr.sum(5)[, 1:2]; contrasts(fff) |
| [,1] [,2] [,3] [,4] |
| a 1 0 -0.2471257 0.2688164 |
| c 0 1 -0.2471257 0.2688164 |
| i 0 0 -0.1498721 -0.8817814 |
| s 0 0 0.8912491 0.0753323 |
| t -1 -1 -0.2471257 0.2688164 |
| > |
| > ## using sparse contrasts: % useful, once model.matrix() works with these : |
| > ffs <- fff |
| > contrasts(ffs) <- contr.sum(5, sparse = TRUE)[, 1:2]; contrasts(ffs) |
| [,1] [,2] [,3] [,4] |
| a 1 0 -0.2471257 0.2688164 |
| c 0 1 -0.2471257 0.2688164 |
| i 0 0 -0.1498721 -0.8817814 |
| s 0 0 0.8912491 0.0753323 |
| t -1 -1 -0.2471257 0.2688164 |
| > stopifnot(all.equal(ffs, fff)) |
| > contrasts(ffs) <- contr.sum(5, sparse = TRUE); contrasts(ffs) |
| 5 x 4 sparse Matrix of class "dgCMatrix" |
| |
| a 1 . . . |
| c . 1 . . |
| i . . 1 . |
| s . . . 1 |
| t -1 -1 -1 -1 |
| > |
| > # glm.Rd |
| > utils::data(anorexia, package = "MASS") |
| > |
| > anorex.1 <- glm(Postwt ~ Prewt + Treat + offset(Prewt), |
| + family = gaussian, data = anorexia) |
| > summary(anorex.1) |
| |
| Call: |
| glm(formula = Postwt ~ Prewt + Treat + offset(Prewt), family = gaussian, |
| data = anorexia) |
| |
| Deviance Residuals: |
| Min 1Q Median 3Q Max |
| -14.1083 -4.2773 -0.5484 5.4838 15.2922 |
| |
| Coefficients: |
| Estimate Std. Error t value Pr(>|t|) |
| (Intercept) 49.7711 13.3910 3.717 0.000410 *** |
| Prewt -0.5655 0.1612 -3.509 0.000803 *** |
| TreatCont -4.0971 1.8935 -2.164 0.033999 * |
| TreatFT 4.5631 2.1333 2.139 0.036035 * |
| --- |
| Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 |
| |
| (Dispersion parameter for gaussian family taken to be 48.69504) |
| |
| Null deviance: 4525.4 on 71 degrees of freedom |
| Residual deviance: 3311.3 on 68 degrees of freedom |
| AIC: 489.97 |
| |
| Number of Fisher Scoring iterations: 2 |
| |
| > |
| > # logLik.Rd |
| > utils::data(Orthodont, package = "nlme") |
| > fm1 <- lm(distance ~ Sex * age, Orthodont) |
| > logLik(fm1) |
| 'log Lik.' -239.1209 (df=5) |
| > logLik(fm1, REML = TRUE) |
| 'log Lik.' -241.7796 (df=5) |
| > |
| > # nls.Rd |
| > od <- options(digits=5) |
| > ## The muscle dataset in MASS is from an experiment on muscle |
| > ## contraction on 21 animals. The observed variables are Strip |
| > ## (identifier of muscle), Conc (Cacl concentration) and Length |
| > ## (resulting length of muscle section). |
| > utils::data(muscle, package = "MASS") |
| > |
| > ## The non linear model considered is |
| > ## Length = alpha + beta*exp(-Conc/theta) + error |
| > ## where theta is constant but alpha and beta may vary with Strip. |
| > |
| > with(muscle, table(Strip)) # 2, 3 or 4 obs per strip |
| Strip |
| S01 S02 S03 S04 S05 S06 S07 S08 S09 S10 S11 S12 S13 S14 S15 S16 S17 S18 S19 S20 |
| 4 4 4 3 3 3 2 2 2 2 3 2 2 2 2 4 4 3 3 3 |
| S21 |
| 3 |
| > |
| > ## We first use the plinear algorithm to fit an overall model, |
| > ## ignoring that alpha and beta might vary with Strip. |
| > |
| > musc.1 <- nls(Length ~ cbind(1, exp(-Conc/th)), muscle, |
| + start = list(th = 1), algorithm = "plinear") |
| > ## IGNORE_RDIFF_BEGIN |
| > summary(musc.1) |
| |
| Formula: Length ~ cbind(1, exp(-Conc/th)) |
| |
| Parameters: |
| Estimate Std. Error t value Pr(>|t|) |
| th 0.608 0.115 5.31 1.9e-06 *** |
| .lin1 28.963 1.230 23.55 < 2e-16 *** |
| .lin2 -34.227 3.793 -9.02 1.4e-12 *** |
| --- |
| Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 |
| |
| Residual standard error: 4.67 on 57 degrees of freedom |
| |
| Number of iterations to convergence: 5 |
| Achieved convergence tolerance: 9.32e-07 |
| |
| > ## IGNORE_RDIFF_END |
| > |
| > ## Then we use nls' indexing feature for parameters in non-linear |
| > ## models to use the conventional algorithm to fit a model in which |
| > ## alpha and beta vary with Strip. The starting values are provided |
| > ## by the previously fitted model. |
| > ## Note that with indexed parameters, the starting values must be |
| > ## given in a list (with names): |
| > b <- coef(musc.1) |
| > musc.2 <- nls(Length ~ a[Strip] + b[Strip]*exp(-Conc/th), muscle, |
| + start = list(a = rep(b[2], 21), b = rep(b[3], 21), th = b[1])) |
| > ## IGNORE_RDIFF_BEGIN |
| > summary(musc.2) |
| |
| Formula: Length ~ a[Strip] + b[Strip] * exp(-Conc/th) |
| |
| Parameters: |
| Estimate Std. Error t value Pr(>|t|) |
| a1 23.454 0.796 29.46 5.0e-16 *** |
| a2 28.302 0.793 35.70 < 2e-16 *** |
| a3 30.801 1.716 17.95 1.7e-12 *** |
| a4 25.921 3.016 8.60 1.4e-07 *** |
| a5 23.201 2.891 8.02 3.5e-07 *** |
| a6 20.120 2.435 8.26 2.3e-07 *** |
| a7 33.595 1.682 19.98 3.0e-13 *** |
| a8 39.053 3.753 10.41 8.6e-09 *** |
| a9 32.137 3.318 9.69 2.5e-08 *** |
| a10 40.005 3.336 11.99 1.0e-09 *** |
| a11 36.190 3.109 11.64 1.6e-09 *** |
| a12 36.911 1.839 20.07 2.8e-13 *** |
| a13 30.635 1.700 18.02 1.6e-12 *** |
| a14 34.312 3.495 9.82 2.0e-08 *** |
| a15 38.395 3.375 11.38 2.3e-09 *** |
| a16 31.226 0.886 35.26 < 2e-16 *** |
| a17 31.230 0.821 38.02 < 2e-16 *** |
| a18 19.998 1.011 19.78 3.6e-13 *** |
| a19 37.095 1.071 34.65 < 2e-16 *** |
| a20 32.594 1.121 29.07 6.2e-16 *** |
| a21 30.376 1.057 28.74 7.5e-16 *** |
| b1 -27.300 6.873 -3.97 0.00099 *** |
| b2 -26.270 6.754 -3.89 0.00118 ** |
| b3 -30.901 2.270 -13.61 1.4e-10 *** |
| b4 -32.238 3.810 -8.46 1.7e-07 *** |
| b5 -29.941 3.773 -7.94 4.1e-07 *** |
| b6 -20.622 3.647 -5.65 2.9e-05 *** |
| b7 -19.625 8.085 -2.43 0.02661 * |
| b8 -45.780 4.113 -11.13 3.2e-09 *** |
| b9 -31.345 6.352 -4.93 0.00013 *** |
| b10 -38.599 3.955 -9.76 2.2e-08 *** |
| b11 -33.921 3.839 -8.84 9.2e-08 *** |
| b12 -38.268 8.992 -4.26 0.00053 *** |
| b13 -22.568 8.194 -2.75 0.01355 * |
| b14 -36.167 6.358 -5.69 2.7e-05 *** |
| b15 -32.952 6.354 -5.19 7.4e-05 *** |
| b16 -47.207 9.540 -4.95 0.00012 *** |
| b17 -33.875 7.688 -4.41 0.00039 *** |
| b18 -15.896 6.222 -2.55 0.02051 * |
| b19 -28.969 7.235 -4.00 0.00092 *** |
| b20 -36.917 8.033 -4.60 0.00026 *** |
| b21 -26.508 7.012 -3.78 0.00149 ** |
| th 0.797 0.127 6.30 8.0e-06 *** |
| --- |
| Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 |
| |
| Residual standard error: 1.11 on 17 degrees of freedom |
| |
| Number of iterations to convergence: 8 |
| Achieved convergence tolerance: 2.17e-06 |
| |
| > ## IGNORE_RDIFF_END |
| > options(od) |
| > |
| > # princomp.Rd |
| > ## Robust: |
| > (pc.rob <- princomp(stackloss, covmat = MASS::cov.rob(stackloss))) |
| Call: |
| princomp(x = stackloss, covmat = MASS::cov.rob(stackloss)) |
| |
| Standard deviations: |
| Comp.1 Comp.2 Comp.3 Comp.4 |
| 7.8322873 4.0077676 1.9114016 0.7624211 |
| |
| 4 variables and 21 observations. |
| > |
| > # termplot.R |
| > library(MASS) |
| > hills.lm <- lm(log(time) ~ log(climb)+log(dist), data = hills) |
| > termplot(hills.lm, partial.resid = TRUE, smooth = panel.smooth, |
| + terms = "log(dist)", main = "Original") |
| > termplot(hills.lm, transform.x = TRUE, |
| + partial.resid = TRUE, smooth = panel.smooth, |
| + terms = "log(dist)", main = "Transformed") |
| > |
| > # xtabs.Rd |
| > if(require("Matrix")) { |
| + ## similar to "nlme"s 'ergoStool' : |
| + d.ergo <- data.frame(Type = paste0("T", rep(1:4, 9*4)), |
| + Subj = gl(9, 4, 36*4)) |
| + print(xtabs(~ Type + Subj, data = d.ergo)) # 4 replicates each |
| + set.seed(15) # a subset of cases: |
| + print(xtabs(~ Type + Subj, data = d.ergo[sample(36, 10), ], sparse = TRUE)) |
| + |
| + ## Hypothetical two-level setup: |
| + inner <- factor(sample(letters[1:25], 100, replace = TRUE)) |
| + inout <- factor(sample(LETTERS[1:5], 25, replace = TRUE)) |
| + fr <- data.frame(inner = inner, outer = inout[as.integer(inner)]) |
| + print(xtabs(~ inner + outer, fr, sparse = TRUE)) |
| + } |
| Loading required package: Matrix |
| Subj |
| Type 1 2 3 4 5 6 7 8 9 |
| T1 4 4 4 4 4 4 4 4 4 |
| T2 4 4 4 4 4 4 4 4 4 |
| T3 4 4 4 4 4 4 4 4 4 |
| T4 4 4 4 4 4 4 4 4 4 |
| 4 x 9 sparse Matrix of class "dgCMatrix" |
| Subj |
| Type 1 2 3 4 5 6 7 8 9 |
| T1 . 1 . . . 1 . . . |
| T2 . . . . . . . 1 1 |
| T3 . . 1 1 1 . 1 1 . |
| T4 . 1 . . . . . . . |
| 25 x 4 sparse Matrix of class "dgCMatrix" |
| outer |
| inner A B C E |
| a . . . 3 |
| b . . . 6 |
| c . . 5 . |
| d . 1 . . |
| e . . 3 . |
| f . . 5 . |
| g . . 3 . |
| h 6 . . . |
| i 8 . . . |
| j . 1 . . |
| k . . . 6 |
| l . 2 . . |
| m . . . 7 |
| n . . 3 . |
| o . 3 . . |
| p . 3 . . |
| q . . . 7 |
| r . . . 2 |
| s . 6 . . |
| t . . . 5 |
| u 4 . . . |
| v . . 3 . |
| w . 3 . . |
| x . . 3 . |
| y 2 . . . |
| > |
| > ## From utils |
| > example(packageDescription) |
| |
| pckgDs> ## No test: |
| pckgDs> ##D packageDescription("stats") |
| pckgDs> ##D packageDescription("stats", fields = c("Package", "Version")) |
| pckgDs> ##D |
| pckgDs> ##D packageDescription("stats", fields = "Version") |
| pckgDs> ##D packageDescription("stats", fields = "Version", drop = FALSE) |
| pckgDs> ##D |
| pckgDs> ##D if(packageVersion("MASS") < "7.3.29") |
| pckgDs> ##D message("you need to update 'MASS'") |
| pckgDs> ## End(No test) |
| pckgDs> pu <- packageDate("utils") |
| |
| pckgDs> ## No test: |
| pckgDs> ##D str(pu) |
| pckgDs> ## End(No test) |
| pckgDs> stopifnot(identical(pu, packageDate(desc = packageDescription("utils"))), |
| pckgDs+ identical(pu, packageDate("stats"))) # as "utils" and "stats" are |
| |
| pckgDs> # both 'base R' and "Built" at same time |
| pckgDs> |
| pckgDs> |
| pckgDs> |
| > |
| > |
| > ## From splines |
| > library(splines) |
| > Matrix::drop0(zapsmall(6*splineDesign(knots = 1:40, x = 4:37, sparse = TRUE))) |
| 34 x 36 sparse Matrix of class "dgCMatrix" |
| |
| [1,] 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [2,] . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [3,] . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [4,] . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [5,] . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [6,] . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [7,] . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [8,] . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . . |
| [9,] . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . . |
| [10,] . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . . |
| [11,] . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . . |
| [12,] . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . . |
| [13,] . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . . |
| [14,] . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . . |
| [15,] . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . . |
| [16,] . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . . |
| [17,] . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . . |
| [18,] . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . . |
| [19,] . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . . |
| [20,] . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . . |
| [21,] . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . . |
| [22,] . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . . |
| [23,] . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . . |
| [24,] . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . . |
| [25,] . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . . |
| [26,] . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . . |
| [27,] . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . . |
| [28,] . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . . |
| [29,] . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . . |
| [30,] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . . |
| [31,] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . . |
| [32,] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . . |
| [33,] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 . |
| [34,] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 4 1 |
| > |
| > |
| > ## From tools |
| > |
| > library(tools) |
| > ## there are few dependencies in a vanilla R installation: |
| > ## lattice may not be installed |
| > ## Avoid possibly large list from R_HOME/site-library, which --vanilla includes. |
| > dependsOnPkgs("lattice", lib.loc = .Library) |
| [1] "Matrix" "nlme" "mgcv" "survival" |
| > |
| > ## This may not be installed |
| > gridEx <- system.file("doc", "grid.Rnw", package = "grid") |
| > vignetteDepends(gridEx) |
| $Depends |
| [1] "lattice" |
| |
| $Installed |
| [1] "lattice" |
| |
| $Found |
| list() |
| |
| $NotFound |
| character(0) |
| |
| $R |
| [1] "R (>= 3.0.0)" |
| |
| attr(,"class") |
| [1] "DependsList" |
| Warning messages: |
| 1: 'vignetteDepends' is deprecated. |
| Use 'vignetteInfo()$depends or package_dependencies()' instead. |
| See help("Deprecated") |
| 2: 'getDepList' is deprecated. |
| Use 'dependsOnPkgs() or package_dependencies()' instead. |
| See help("Deprecated") |
| 3: 'package.dependencies' is deprecated. |
| Use 'package_dependencies' instead. |
| See help("Deprecated") |
| > |