mapply впадает в бесконечный цикл - PullRequest
0 голосов
/ 11 декабря 2018

У меня есть data.table вот так:

testDT <- data.table(SFf = as.character(c("C1H1", "C3H4Cl")),
                     Mult = as.integer(c(3,5))
)

Теперь я пытаюсь перебрать строки в этой таблице и применить к ней функцию (multiform () из пакета enviPat) следующим образом:

mapply(multiform,testDT$SFf,testDT$Mult)

на выходе должно быть две строки, а именно "C3H3" и "C15H20Cl5".Однако функция просто никогда не прекращает вычисление и, похоже, зацикливается на бесконечном цикле.

Когда я применяю такую ​​функцию, как

multiform("C1H1",3)

, она работает, и я получаю «C3H3» в качестве вывода.Что я делаю не так?

Ясель

1 Ответ

0 голосов
/ 11 декабря 2018

Я понял.Проблема заключалась в том, что функция multiform () не допускает элементы без чисел за ними.Так что это не «C3H4Cl», а «C3H4Cl1».

Я не думаю, что это задумано, и постараюсь связаться с авторами пакета.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...