Ошибка в sprintf («% s не найден! Интерпретация дозы как наномолярных концентраций.») В R - PullRequest
0 голосов
/ 17 апреля 2020

У меня проблема, связанная с ошибкой спринта в R 3.6.3 (с помощью вкладки терминала Rstudio). дайте мне знать, как решить приведенную ниже ошибку.

-Команда, используемая во вкладке терминала Rstudio-

   Rscript AP_simulation.R -d drug1 -x "1-10,15,20,25" --cmaxfile="my_cmax_table.csv" --hergpath="path/to/herg/results/" --hillpath="path/to/hill/results/"-

-Пример результата ошибки-

   loaded via a namespace (and not attached):
   [1] compiler_3.6.3 getopt_1.20.3
   Error in sprintf("%s not found! Interpreting dose as nanomolar concentrations.") :

   Calls: print -> sprintf

-Кодировать эту ошибку произошло -

  #--- get therapeutic concentration (Cmax)
      if(drug=="control"){
        cmax<-0
      }else{
      if(!file.exists(cmaxfile)){
        cmax<-1
       print(sprintf("%s not found! Interpreting dose as nanomolar concentrations."))
      }else{
      drugtable<-read.csv(cmaxfile)
      cmax<-drugtable[as.character(drugtable$drug)==drug,"therapeutic"] # should be in nanomolar
      if(length(cmax)==0){
       cmax<-1
       print(sprintf("Cmax undefined, interpreting dose as nanomolar concentrations."))
      }else if(length(cmax)==1){
       print(sprintf("Cmax set to %g nM, interpreting dose as multiples of Cmax.",cmax))
      }else{
        stop("Multiple entries for %s therapeutic concentration!",drug)
      }
    }
   }

1 Ответ

0 голосов
/ 17 апреля 2020
print(sprintf("%s not found! Interpreting dose as nanomolar concentrations."))

отсутствует аргумент для sprintf(). Поскольку %s является заполнителем для символа, который должен быть напечатан в этом месте. Пример:

for(i in c("One", "Two", "Three")){
  print(sprintf("This is Iteration Number %s", i))
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...