#r #latex #r-markdown #vtable #kableextra
#r #Латекс #r-markdown #виртуальная таблица #kableextra
Вопрос:
поскольку я новичок в RMarkdown и / или R в целом, у меня возникли небольшие проблемы со следующим:
Я хотел бы отобразить виртуальную таблицу (созданную с использованием библиотеки vtable) как обычную таблицу таблиц в RMarkdown (я создаю PDF с помощью LaTeX). Я понимаю, что vtable может возвращать knitr-кабель, и поэтому его можно использовать в качестве входных данных для kable_styling, чтобы я мог поработать с параметрами latex. Похоже, это работает до определенного момента.
Вот код на данный момент:
vtable(heart_faliure_data, labels = label) %>%
kable_styling(latex_options = c("striped", "scale_down"))
Но результирующая таблица выглядит следующим образом:
Почему команда latex вообще отображается?
Я благодарен за любую помощь, которую вы можете мне оказать.
Базу данных можно найти здесь: https://archive.ics.uci.edu/ml/datasets/Heart неудача клинические записи
И вот полный файл Rmd:
---
title : "Data mining using R for heart failure clinical records Dataset"
floatsintext : yes
figurelist : yes
tablelist : yes
footnotelist : no
linenumbers : no
linkcolor : "blue"
mask : no
draft : no
classoption : "doc"
output : papaja::apa6_pdf
documents
header-includes:
- usepackage{booktabs}
- usepackage{longtable}
- usepackage{array}
- usepackage{multirow}
- usepackage{wrapfig}
- usepackage{float}
- usepackage{colortbl}
- usepackage{pdflscape}
- usepackage{tabu}
- usepackage{threeparttable}
- usepackage{threeparttablex}
- usepackage[normalem]{ulem}
- usepackage{makecell}
- usepackage{xcolor}
---
```{r include = FALSE}
library("tidyverse")
library("kableExtra")
library("rsample")
library("recipes")
library("parsnip")
library("yardstick")
library("viridisLite")
library("GGally")
library("vtable")
library("qwraps2")
library("ggplot2")
library("htmlTable")
library("egg")
library("dplyr")
library("afex")
library("papaja")
library("kableExtra")
library("magrittr")
library("vtable")
knitr::opts_chunk$set(echo = TRUE)
heart_faliure_data <- read.csv(file = "../Data/heart_failure_clinical_records_dataset.csv", header = FALSE, skip=1)
c_names <- c("Age",
"Anaemia",
"cr_ph",
"diabetes",
"ejection_fraction",
"high_blood_pressure",
"platelets",
"serum_creatinine",
"serum_sodium",
"sex",
"smoking",
"time",
"DEATH_EVENT")
colnames(heart_faliure_data) <- c_names
```
newpage
# Introductiom
```{r echo=FALSE}
knitr::kable(head(heart_faliure_data), booktabs = TRUE) %>%
kable_styling(latex_options = c("striped", "scale_down"))
```
```{r echo=FALSE}
label <- data.frame(
Age = "Age of the patient",
Anaemia = "Decrease of red blood cells or hemoglobin",
creatinine_phosphokinase = "level of the CPK enzyme in the blood (mcg/L)",
diabetes = "if the patient has diabetes",
ejection_fraction = "percentage of blood leaving the heart at each contraction",
high_blood_pressure = "if the patient has hypertension",
platelets = "platelets in the blood (kiloplatelets/mL)",
serum_creatinine = "level of serum creatinine in the blood (mg/dL)",
serum_sodium = "level of serum sodium in the blood (mEq/L)",
sex = "sex of the patient, woman or man",
smoking = "if the patient smokes or not",
time = "follow-up period",
DEATH_EVENT = " if the patient deceased during the follow-up period"
)
vtable(head(heart_faliure_data), labels = label, out="latex") #%>%
kable_styling(latex_options = c("striped", "scale_down"))
```
Приветствую!
Редактировать: форматирование кода
Комментарии:
1. Я добавил необходимую информацию
2. В вопросе есть ссылка на набор данных («Репозиторий машинного обучения UCI: набор данных клинических записей о сердечной недостаточности» archive.ics.uci.edu/ml/datasets/Heart неудача клинические записи ). Правда, вам не нужен файл .bin для его воспроизведения. Я избавлюсь от них.
Ответ №1:
Проблема out = 'latex'
в вашем коде. out = 'latex'
выдает код LaTeX в качестве выходных данных, а не a kable
, переопределяя выходные данные kable по умолчанию, которые вы получаете, выполняя vtable
в документе RMarkdown. Вы можете исправить это, удалив out = 'latex'
параметр или изменив его на out = 'kable'
.
Извините, что не ответил раньше, вероятно, мне следует настроить оповещение или что-то в этом роде для виртуальной таблицы.