小编Kat*_*e N的帖子

识别 R 数据框中最后一次出现的值的列名

我有一个如下所示的数据集,其中包含 1 和 0 列。我想添加最后一列,用于标识每行最后出现 0 的列名。

have = data.frame(a = c(1,0,1,1,0,0,1,1,1,0),
                  b = c(1,0,1,1,1,0,1,1,0,0),
                  c = c(0,0,0,1,0,1,1,1,1,0),
                  d = c(1,0,1,1,0,0,0,1,0,1),
                  e = c(1,1,1,1,1,1,1,1,1,1))
> have
   a b c d e
1  1 1 0 1 1
2  0 0 0 0 1
3  1 1 0 1 1
4  1 1 1 1 1
5  0 1 0 0 1
6  0 0 1 0 1
7  1 1 1 0 1
8  1 1 1 1 1
9 …
Run Code Online (Sandbox Code Playgroud)

r dplyr

10
推荐指数
2
解决办法
101
查看次数

动态设置 R markdown 标题、输出文件名和全局变量

我必须定期运行两个科目(数学和阅读)的降价报告。目前,我必须在 Markdown 标题、输出文件名(.html 文件)中以及在 R 代码块中设置主题变量以进行数据处理。我想设置一次这个变量并调整标题、输出文件和分析。有没有办法做到这一点?

我知道标题可以通过paramsYAML 标头动态化,但这对输出文件名或 R 代码块内没有帮助。

请参阅下面我当前代码的一部分。请注意,读取变量被指定了 3 次(标题、输出文件名以及“预设”下的 R 代码块内。我想指定一次“读取”(最好在脚本顶部)。

---
title: Reading Investigation"
author: "xxx"
date: "`r format(Sys.time(), '%B %d, %Y')`"
output:
  html_document:
    code_folding: hide
    depth: 3
    fig_height: 10
    fig_width: 12
    highlight: tango
    number_sections: no
    theme: cerulean
    toc: yes
    toc_float: yes
    
knit: (function(inputFile, encoding) 
{ rmarkdown::render(inputFile, encoding = encoding, 
output_file = paste0('folder/reading_output_', Sys.Date(), '.html') )}) 
---

```{r, message=FALSE, echo=FALSE, warning=FALSE, results='hide', comment="", fig.height=10, fig.width=12}

# Libraries ------------------------------------------------------------------

library(RODBC)
library(tidyverse)
library(ggplot2)
library(kableExtra)

# …
Run Code Online (Sandbox Code Playgroud)

yaml r-markdown

6
推荐指数
1
解决办法
1891
查看次数

循环遍历函数并将输出堆叠到 R 中的数据集中

我编写了一个运行线性模型并输出数据帧的函数。我想多次运行该函数并堆叠输出。这是一个假设的数据集和函数:

data = data.frame(grade_level = rep(1:4, each = 3),
                  x = rnorm(12, mean = 21, sd = 7.5),
                  y = rnorm(12, mean = 20, sd = 7)) 

func = function(grade){
  model = lm(y ~ x, data=data[data$grade_level == grade,])
  fitted.values = model$fitted.values 
  final = data.frame(grade_level = data$grade_level[data$grade_level == grade],
                     predicted_values = fitted.values)
  final
  }
Run Code Online (Sandbox Code Playgroud)

目前,我在数据集中的每个年级运行该函数:

grade1 = func(1)
grade2 = func(2)
grade3 = func(3)
grade4 = func(4)

pred.values = rbind(grade1, grade2, grade3, grade4)
Run Code Online (Sandbox Code Playgroud)

如何使用循环(或其他东西)更有效地多次运行此函数?

loops r function dplyr

1
推荐指数
1
解决办法
724
查看次数

标签 统计

dplyr ×2

r ×2

function ×1

loops ×1

r-markdown ×1

yaml ×1