R中的预测函数给出错误的输出,并且在插值期间Backfit从曲线反转X和Y.

时间:2017-03-29 05:11:53

标签: r interpolation predict


我试图用一个模型将数据插入到一个已知的Sigmoid曲线5点。

我正在使用R版本1.0.136 for Mac。并使用包drc找到适合我的数据的模型。

model1 <- drm(Abs ~ Concen, fct=LL2.4(), data=Data1)

我获得了可靠的5点曲线。所以,我确信曲线是我想要的,它来自绘制模型。

enter image description here

标准曲线

在出现问题时尝试插值。我有一个矩阵.csv包括几列,一个是Abs,有85行(曲线中有5个,80个值),另一个是Conc,它只有曲线填充的5行和80个空单元格。当我使用函数预测时,我遇到两个问题:
predict (model1, newdata=Conc2, se.fit = TRUE, interval='prediction', type="response", level = 0.95)

  1. 我只获得前5个值(曲线中的值)和剩下的填充符号
  2. 我得到X(Abs)的预测而不是Y(Conc)。
  3.      |Prediction    |        SE      |
         :--------------:----------------:
     [1,]| 0.40365782   |    0.006283406 |
     [2,]| 0.28834945   |    0.005787962 |
     [3,]| 0.22156106   |    0.005147014 |
     [4,]| 0.10895382   |    0.004807142 |
     [5,]| 0.08248443   |    0.005639122 |
     [6,]|      NA      |        NA      |
     [7,]|      NA      |        NA      |
     [8,]|      NA      |        NA      |
     [9,]|      NA      |        NA      | .... 
    

    我可能需要指定一个数据框,但我不确定在这种情况下它是如何工作的。我尝试了data.frame(Abs,Concen),我的所有结果在它们之间非常相等,与X(Abs)无关。
      
    所以,我决定使用backfit功能。
      
        backfit(model1)
      
        | |剂量|估计|
        :----:------:-------------:
        | [1,] | 0 | NaN |
        | [2,1] | 1 | 0.04172716 |
        | [3,] | 3 | 1.04366913 |
        | [4,] | 30 | 3.53619494 |
        | [5,1] | 100 | 4.44513138 |
      
    那里有两个问题:
      
    1.-估计被反转! 1应该是较高的100和较低的Abs。
    2.-同样,它仅给出曲线值的结果,而不是继续到其他80行。
      
    当问题来临时,试图进行插值。我有一个矩阵.csv包括几列,一个是Abs,有85行(曲线中有5个,80个值),另一个是Conc,它只有曲线填充的5行和80个空单元格。当我使用函数预测时,我遇到两个问题:
      
        predict (model1, newdata=Conc2, se.fit = TRUE, interval='prediction', type="response", level = 0.95)
      
    1.-我只获得前5个值(曲线中的值)和其余的填充值。
      
    2.-我得到X(Abs)的预测而不是得到Y(Conc)。
    E.I.
      
         |预测| SE |
     [1,] | 0.40365782 | 0.006283406 |
     [2,] | 0.28834945 | 0.005787962 |

     [3,] | 0.22156106 | 0.005147014 |

     [4,] | 0.10895382 | 0.004807142 |
     [5,] | 0.08248443 | 0.005639122 |
     [6,] | NA | NA |
     [7,] | NA | NA |
     [8,] | NA | NA |
     [9,] | NA | NA | ....    
    我可能需要指定一个数据框,但我不确定在这种情况下它是如何工作的。我尝试了data.frame(Abs,Concen),我的所有结果在它们之间非常相等,与X(Abs)无关。
      
    所以,我决定使用backfit功能。
      
        backfit(model1)
      
        | |剂量|估计|
               :------------:---------------:
        | [1,] | 0 | NaN |
        | [2,] | 1! 0.04172716 |
        | [3,] | 3 | 1.04366913 |
        | [4,] | 30 | 3.53619494 |
        | [5,] | 100 | 4.44513138 |
      
    那里有两个问题:

    1. 估算被反转! 1应该是更高的,100应该是更低的Abs。
    2. 同样,它只给出曲线值的结果,而不是继续到其他80行。

0 个答案:

没有答案