使用 psych 包将 R markdown 编织成 pdf

issues knitting R markdown to pdf with psych package

我遇到的问题是在我将 R-Markdown 文件编织成 pdf(或 word)文档后,出现以下错误:

但是,我已经确定我的 r 中有我的库(psych)调用,从中调用代码块。当我在 r studio 的 .r 文件中调用 describe() 调用时,以及当我在 markdown 文件中内联调用它时,describe() 调用工作得很好,但是当我编织成 pdf 时仍然出现错误。

.r 文件中引用了 Knitr 代码。

## @knitr code_2.2
library(psych)
describe(women_DF)

r markdown 中的代码块:

## 2.2 Summarize using describe()
* The `summary` function in base R does not show the number of observations and standard deviation of each variable
    + A convenient alternative to `summary` that includes these statistics is `describe` in the `psych` package
* If you have not already done so, install the `psych` package
    + Console: install.packages("psych") or from Packages → Install dialog
* Recall that you must also call `library(psych)` to load the package into memory
* Now use `describe()` to summarize `women_DF`:    
```{r code_2.2}

r markdown 文件的设置:

---
title: "Module 1 Workshop"
author: "MSBX-5310 (Customer Analyitcs)"
date: "1/14/2021"
output:
  pdf_document: default
  word_document: default
---
```{r, include=FALSE}
knitr::opts_chunk$set(
    echo = TRUE,
    fig.height = 3,
    fig.width = 4,
    message = FALSE,
    comment = NA, error = TRUE)
#uncomment the line below if using an external R script for R chunks
knitr::read_chunk("Workshop1.R")

当您单击 knit 按钮时,

knitr 在其自己的 R 会话中运行代码。这意味着您环境中的任何内容都不可用于构建文档的单独会话。

特别是,虽然您没有 post 整个 Rmarkdown 文件,但问题似乎是您没有在 .Rmd 文件中的任何地方加载 psych 包。您应该将它加载到 Rmarkdown 文件中的某处,要么在单独的块中(如果您不希望它在您的函数调用之前显示),要么在您调用其函数之一的同一块中(在这种情况下,describe()).


```{r code_2.2}
library(psych)
describe(women_DF)