times a b s ex
1 0 59 140 1e-4 1
2 20 59 140 1e-4 0
3 40 59 140 1e-4 0
4 60 59 140 1e-4 2
5 120 59 140 1e-4 20
6 180 59 140 1e-4 30
7 240 59 140 1e-4 31
8 360 59 140 1e-4 37
9 0 60 140 1e-4 0
10 20 60 140 1e-4 0
11 40 60 140 1e-4 0
12 60 60 140 1e-4 0
13 120 60 140 1e-4 3300
14 180 60 140 1e-4 6600
15 240 60 140 1e-4 7700
16 360 60 140 1e-4 7700
# dput(DF)
structure(list(times = c(0, 20, 40, 60, 120, 180, 240, 360, 0,
20, 40, 60, 120, 180, 240, 360), a = c(59, 59, 59, 59, 59, 59,
59, 59, 60, 60, 60, 60, 60, 60, 60, 60), b = c(140, 140, 140,
140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140, 140
), s = c(1e-04, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04,
1e-04, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04, 1e-04), ex = c(1,
0, 0, 2, 20, 30, 31, 37, 0, 0, 0, 0, 3300, 6600, 7700, 7700)), .Names = c("times",
"a", "b", "s", "ex"), row.names = c(NA, 16L), class = "data.frame")
DF2
prime times mean
g1 0 1.0000000
g1 20 0.7202642
g1 40 0.8000305
g1 60 1.7430986
g1 120 16.5172242
g1 180 25.6521268
g1 240 33.9140056
g1 360 34.5735984
#dput(DF2)
structure(list(times = c(0, 20, 40, 60, 120, 180, 240, 360),
mean = c(1, 0.7202642, 0.8000305, 1.7430986, 16.5172242,
25.6521268, 33.9140056, 34.5735984)), .Names = c("times",
"mean"), row.names = c(NA, -8L), class = "data.frame")
DF是实际上有几百的 'a' 的组合, 'B' 更大的数据帧的一个例子,和“ s'值导致不同的'ex'值。我想要做的是找到'a','b'和's'的组合,其'ex'值(DF)最好符合'平均值'(DF2)在相同的“时间”。 此拟合将一次比较8个值(即,时间== c(0,20,40,60,120,180,240,360))
在此示例中,我希望59,140和1e-4代表a','b'和's'值,因为那些'ex'值(DF)最适合'平均值'(DF2)。
我想'a','b'和's'值'ex'(DF)最适合'的意思是'(DF2)
因为我想要'a','b'和's'值的一个可能组合,最小二乘拟合模型是最好的,我会一次比较8个值 - 'times'== 0 - 360. 我不想'a','b'和's'值最适合每个时间点。我想要'a','b'和's'值,其中所有8'ex'(DF)最适合所有8个'平均值'(DF2) 这是我需要帮助的地方。
我从来没有使用线性最小二乘法拟合,但我假设我想要做的是可能的。
lm(DF2$mean ~ DF$ex,....) # i'm not sure if I should combine the two
# data frames first then use that as my data argument, then
# where I would include 'times' as the point of comparison,
# if that would be used in subset?
你能提供与'dput(DF)'和'dput(DF2)'的数据帧:构造函数将在矩阵向量减法被重复用于每一柱?这将使他们更容易重现 –