Мне дали большой кусок плохо отформатированного монолитного R-кода с большим количеством функций, и я хотел бы выяснить, какие функции вызывают какие функции.
Я думал, что смогу использовать @callGraph от roxygen, но а) код должен быть в пакете, что будет головной болью с этим кодом, и б) он даже не работает, когда яЗапустите его на моей простой упаковке.Я вижу сообщение от одного из авторов Roxygen, в котором говорится, что генерация графа вызовов отключена из-за зависимости Rgraphviz, но код там есть.В любом случае.
Кто-нибудь получил лучший способ быстро решить, что foo вызывает bar, baz и qux, и что qux вызывает quux?
Редактировать: Решения, основанные на системе профилирования R, хороши,при условии, что вы действительно можете запустить код ... Половина файлов в файлах не запускается, и я не знаю, что он делает ... Статистический анализ - это слишком много, на что я надеюсь.
Правка 2. Похоже, что граф вызовов Кислорода выполняет статический анализ, основанный на рекурсивном снижении выражения функции и проверке is.callable.Было бы прекрасно иметь возможность запускать это для любой функции ... Я могу поиграть с этим завтра ...