0

我在我的数据框中拟合列毒物分布但是,它一直警告这个错误:“charToDate(x) 中的错误:字符串不是标准的明确格式”

 Date       Admissions Attendance Tri_1 Tri_2 Tri_3 Tri_4 Tri_5
   <date>          <int>      <int> <dbl> <dbl> <dbl> <dbl> <dbl>
 1 2014-04-01         84        209     5    33    62    80    29
 2 2013-08-01         96        207     2    45    95    59     6
 3 2013-12-01        100        254     3    37    97   102    14
 4 2014-02-01        106        235     3    38    83    94    17
 5 2014-01-01         84        222    10    25    53   115    18
 6 2013-07-01         99        235     8    33    89    85    20
 7 2014-06-01         89        210     9    37    58    89    17
 8 2014-03-01         94        247     6    36    73   110    22
 9 2014-05-01        101        211     5    33   113    53     6
10 2013-11-01        104        234     3    42   108    73     8

这是我的数据,我想将它拟合到 tri_1 列。即使我更改了日期的类型,仍然会导致错误。

这是我的代码: 估计 <- df %>% fitdist(data= Tri_1,distr = "pois")

它不断警告此错误:“charToDate(x) 中的错误:字符串不是标准的明确格式”

4

1 回答 1

0

未加引号的列名在 tidyverse 函数的环境中工作,例如mutate/summarise/select/... fitdist来自fitdistrplus,它可能与 tidyverse 函数不兼容。我们可以直接申请

library(fitdistrplus)
fitdist(df$Tri_1,distr = "gamma")
#Fitting of the distribution ' gamma ' by maximum likelihood 
#Parameters:
#       estimate Std. Error
#shape 4.0508963  1.7421450
#rate  0.7501967  0.3434884

或者如果我们需要在管道中使用它,那么应该pull编辑该列

library(dplyr)
df %>%
    pull(Tri_1) %>%
    fitdist(data = ., distr = "gamma")
#Fitting of the distribution ' gamma ' by maximum likelihood 
#Parameters:
#       estimate Std. Error
#shape 4.0508963  1.7421450
#rate  0.7501967  0.3434884
于 2019-04-14T03:44:42.340 回答