Я поддерживаю приложение на основе R, которое использует функции типа read.table (), различные функции data.frame () и lm () / glm (). Начиная с версии 4.0.0, R по умолчанию обрабатывает строки в фреймах данных как строки, а не как факторы. Я обдумываю, как с этим справиться, чтобы избежать появления проблем.
Я искал информацию о функциях, на которые может повлиять изменение, но не нашел окончательных списков или утилит, которые могли бы сканировать пакет для потенциальных проблем. Я пропустил что-нибудь, что могло бы помочь?
С другой стороны, я нашел эссе
Курт Хорник: stringsAsFactors
https://developer.r-project.org/Blog/public/2020/02/16/stringsasfactors/index.html
, в котором, помимо прочего, говорится:
Следовательно, на совещаниях R Core в Тулузе в 2019 году было решено перейти к использованию stringsAsFactors = FALSE по умолчанию , в идеале начиная с версии 4.0.0.
В конечном итоге опция stringsAsFactors исчезнет. В настоящее время стало возможным последовательно устанавливать этот параметр (и, следовательно, значение по умолчанию для stringsAsFactors) с помощью внутренней переменной среды _R_OPTIONS_STRINGS_AS_FACTORS_: базовый и рекомендуемый пакеты уже были изменены в прошлом году для правильной работы независимо от настроек по умолчанию, а некоторые из обычных проверок CRAN скоро переключится на использование _R_OPTIONS_STRINGS_AS_FACTORS_ = false.
Если я правильно понимаю, stringsAsFactors больше не будет параметром в data.frame () и read.table () когда-нибудь в будущее. И похоже, что теперь мы можем передавать кадры данных с категориальными переменными, представленными строками, в lm (), glm () и т. Д. c, и такие функции будут корректно обрабатывать их автоматически. Поэтому я могу удалить все параметры stringsAsFactors из вызовов функций, и все эти функции будут работать правильно? Это правильно? (Это кажется слишком простым.)
Я благодарен за совет. Спасибо.