【发布时间】:2023-03-17 09:53:02
【问题描述】:
这是我的数据
Assay Sample Dilution meanresp number
1 S 0.25 68.55 1
1 S 0.50 54.35 2
1 S 1.00 44.75 3
我的最终目标是对每两个连续的行应用线性回归,并使用 Dilution 和 meanresp 返回该回归的斜率。
表格的长度可能会有所不同,我不想使用 for 循环,因为我正试图摆脱这种习惯。
我认为 ddply 会很好,但我不确定如何选择每两个连续行的子集。我想也许有一种方式可以说'对长度为 2 的稀释的每个向量子集都这样做?
任何见解都会有所帮助。
【问题讨论】:
-
我不确定您期望的结果。类似
diff(meanresp) / diff(Dilution)(按Assay和Sample分组)? -
可以this 帮助你吗? (用于每两个连续行的选择)
-
我的目标是这样做:ddply(.data=data, .variables='subsets each continuous 2 rows', .fun='linear model function')有麻烦了这有意义吗?
-
ddply按列而不是行拆分,因此您不能使用它。在下面两次使用lapply检查一种方法。本质上你可以将这两个合并为 1 个函数,但我会避免它,因为它会导致难以阅读的代码。
标签: r statistics plyr apply linear-regression