сохранить старое (до 3.1.0) поведение type.convert
Выпущена версия 3.1.0, и одной из новых функций является следующее:
type.convert()
(и, следовательно, по умолчаниюread.table()
) возвращает символьный вектор или коэффициент при представлении числового ввода, так как двойное значение может потерять точность. Аналогично для сложных входов.
Чтобы привести пример:
df <- read.table(text = "num1 num2
1.1 1.1234567890123456
2.2 2.2
3.3 3.3", header = TRUE)
sapply(df, class)
# num1 num2
# "numeric" "factor"
в то время как с предыдущими версиями,read.table
возвратил бы два числовых столбца.
Для тех, кто, как я, обеспокоен этим изменением, что можно сделать, чтобы сохранить старое поведение?
Примечание: я хотел бы общее решение, которое не делает предположений о входных данных, то есть не предлагает использоватьcolClasses = "numeric"
в приведенном выше примере. Благодарю.