小编dan*_*res的帖子

"预测"函数的逆

使用predict()一个可以获得对于给定模型y的自变量(x)的特定值的因变量()的预测值.是否有任何预测x给定的函数y

例如:

kalythos <- data.frame(x = c(20,35,45,55,70), 
    n = rep(50,5), y = c(6,17,26,37,44))
kalythos$Ymat <- cbind(kalythos$y, kalythos$n - kalythos$y)
model <- glm(Ymat ~ x, family = binomial, data = kalythos)
Run Code Online (Sandbox Code Playgroud)

如果我们想知道模型的预测值x=50:

predict(model, data.frame(x=50), type = "response")
Run Code Online (Sandbox Code Playgroud)

例如,我想知道哪个xy=30.

r

9
推荐指数
2
解决办法
5510
查看次数

合并两个数据框并删除重复的列

我想要cbind两个数据框并删除重复的列.例如:

df1 <- data.frame(var1=c('a','b','c'), var2=c(1,2,3))
df2 <- data.frame(var1=c('a','b','c'), var3=c(2,4,6))

cbind(df1,df2) #this creates a data frame in which column var1 is duplicated
Run Code Online (Sandbox Code Playgroud)

我想创建一个包含列的数据框var1,var2并且不会重复var3哪一列var2.

duplicate-data r

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

dplyr,do(),从模型中提取参数而不会丢失分组变量

来自R帮助do()的稍微改变的例子:

by_cyl <- group_by(mtcars, cyl)
models <- by_cyl %>% do(mod = lm(mpg ~ disp, data = .))
coefficients<-models %>% do(data.frame(coef = coef(.$mod)[[1]]))
Run Code Online (Sandbox Code Playgroud)

在数据帧系数中,每个cyl组都有第一个线性模型系数.我的问题是如何生成一个数据框,其中不仅包含具有系数的列,还包含具有分组变量的列.

=====编辑:我扩展示例以尝试更清楚我的问题

让我们假设我想提取模型的系数和一些预测.我可以做这个:

by_cyl <- group_by(mtcars, cyl)
getpars <- function(df){
  fit <- lm(mpg ~ disp, data = df)
  data.frame(intercept=coef(fit)[1],slope=coef(fit)[2])
}
getprediction <- function(df){
  fit <- lm(mpg ~ disp, data = df)
  x <- df$disp
  y <- predict(fit, data.frame(disp= x), type = "response")
  data.frame(x,y)
}
pars <- by_cyl %>% do(getpars(.))
prediction <- by_cyl %>% do(getprediction(.)) …
Run Code Online (Sandbox Code Playgroud)

r dplyr

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

使用跨替换 group_by_at(NULL)

以前,我曾经group_by_at按字符串向量或按 NULL 分组:

library(tidyverse)

grouping_1 <- c("cyl", "vs")
grouping_2 <- NULL

mtcars %>% group_by_at(grouping_1) 
mtcars %>% group_by_at(grouping_2) 
Run Code Online (Sandbox Code Playgroud)

的帮助group_by_at表明该函数已被取代,across应改为使用该函数。但是,按 NULL 分组会出现错误

mtcars %>% group_by(across(grouping_1)) # this works
mtcars %>% group_by(across(grouping_2)) # this gives an error
Run Code Online (Sandbox Code Playgroud)

对我来说,group_by_at以所描述的方式使用很有用,因为在我的函数中,我可以使用相同的代码,而无需每次都检查分组参数是否为空 (NULL)。

r dplyr tidyverse rlang

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

R,ggplot2,在主题演示期间按顺序介绍图形的元素

我使用ggplot2来绘制我的图形.我想使用图表来创建主题演讲.

在我的演讲中,我想顺序介绍情节的不同元素.首先,对应于条件A的点,然后是对应于条件B的点,然后是一些曲线.

我想也许我可以创建整个情节并以一种我可以操纵主题演讲中的单个元素的方式导出它(比如删除一个条件的点).感谢来自stackoverflow的人,我能够做到这一点: R,将文件导出到主题演讲

但我发现在主题演讲中选择单个元素非常困难.所以,我想知道哪种更有效的方式.

r ggplot2

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

R,在数据框中创建一个新列,该列应用具有相似名称的所有列的函数

我有一个数据框,其中列的名称类似于a,b,v1,v2,v3 ... v100.我想创建一个新列,仅将函数应用于名称包含"v"的列.

例如,给定此数据框

df<-data.frame(a=rnorm(3),v1=rnorm(3),v2=rnorm(3),v3=rnorm(3))
Run Code Online (Sandbox Code Playgroud)

我想创建一个新列,其中每个元素是同一行中v1,v2和v3元素的总和.

r dataframe

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

使用列表名称作为一列中的值列入tibble

我想转换这样的列表:

l <- list(x = c(1, 2), y = c(3, 4, 5))
Run Code Online (Sandbox Code Playgroud)

像这样的一个小组:

 Name  Value 
 x      1
 x      2
 y      3
 y      4
 y      5
Run Code Online (Sandbox Code Playgroud)

r list purrr tidyverse tibble

3
推荐指数
2
解决办法
653
查看次数

group_by使用整齐的评估语义的字符向量

我曾经这样做,使用 group_by_

library(dplyr)
group_by <- c('cyl', 'vs')
mtcars %>% group_by_(.dots = group_by) %>% summarise(gear = mean(gear))
Run Code Online (Sandbox Code Playgroud)

但现在已group_by_被弃用.我不知道如何使用整洁的评估框架来做到这一点.

r dplyr nse rlang

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

标签 统计

r ×8

dplyr ×3

rlang ×2

tidyverse ×2

dataframe ×1

duplicate-data ×1

ggplot2 ×1

list ×1

nse ×1

purrr ×1

tibble ×1