首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R中具有多个解释变量的细菌生长曲线(logistic/sigmoid)

R中具有多个解释变量的细菌生长曲线(logistic/sigmoid)
EN

Stack Overflow用户
提问于 2017-05-02 00:39:46
回答 1查看 2.1K关注 0票数 2

目标:我想获得多元处理生长曲线的回归曲线(g-图曲线和模型参数)。

我有细菌培养C={a,b,c,d}在营养来源N={x,y}上生长的数据。

他们的理想生长曲线(每小时测量细胞培养的浊度)如下所示:

有8种不同的曲线可以得到系数和曲线。对于我的数据框架,如何能一次做到这一点,将不同的处理方式作为非线性回归的不同组来进行?

谢谢!

这个问题类似于这里发布的一个未回答的问题。

(理想化数据的源代码,抱歉它不优雅,因为我不是计算机科学家):

代码语言:javascript
复制
a<-1:20
a[1]<-0.01
for(i in c(1:19)){
  a[i+1]<-1.3*a[i]*(1-a[i])
}
b<-1:20
b[1]<-0.01
for(i in c(1:19)){
  b[i+1]<-1.4*b[i]*(1-b[i])
}
c<-1:20
c[1]<-0.01
for(i in c(1:19)){
  c[i+1]<-1.5*c[i]*(1-c[i])
}
d<-1:20
d[1]<-0.01
for(i in c(1:19)){
  d[i+1]<-1.6*d[i]*(1-d[i])
}
sub.data<-cbind(a,b,c,d)
require(reshape2)
data<-melt(sub.data, value.name = "OD600")
data$nutrition<-rep(c("x", "y"), each=5, times=4)
colnames(data)[1:2]<-c("Time", "Culture")


ggplot(data, aes(x = Time, y = OD600, color = Culture, group=nutrition)) +
  theme_bw() + xlab("Time/hr") + ylab("OD600") +
  geom_point() +  facet_wrap(~nutrition, scales = "free")
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-06 20:55:12

如果您熟悉来自dplyrdplyr函数(包括在tidyverse中),那么您可以根据文化和营养对数据进行分组,并使用broom为每个组创建模型。我认为这个格列奈特正在达到你想要达到的目标。下面是一段代码:

代码语言:javascript
复制
library(tidyverse)
library(broom)
library(mgcv)  #For the gam model

data %>%
      group_by(Culture, nutrition) %>%
      do(fit = gam(OD600 ~ s(Time), data = ., family=gaussian())) %>% # Change this to whatever model you want (e.g., non-linear regession, sigmoid)
      #do(fit = lm(OD600 ~ Time, data = .,)) %>% # Example using linear regression
      augment(fit) %>% 
      ggplot(aes(x = Time, y = OD600, color = Culture)) + # No need to group by nutrition because that is broken out in the facet_wrap
      theme_bw() +  xlab("Time/hr") + ylab("OD600") +
      geom_point() + facet_wrap(~nutrition, scales = "free") +
      geom_line(aes(y = .fitted, group = Culture))

如果你一次都没问题,就把%>%拆开,以便更好地理解。我用的是GAM,它适用于这里,但是你可以用你想要的任何型号来代替它,包括sigmoid。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43728424

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档