У меня есть база данных SQL SERVER, полная номеров деталей, которые являются буквенно-цифровыми, например 19E378. Когда я запрашиваю эти значения с помощью функции sqlQuery() пакета RODBC, R немедленно распознает это значение как Inf. Я предполагаю, что он рассматривает научную нотацию и считает, что 19E378 означает 19 * 10 к 378-й мощности (исправлено).Значения символов представлены как inf
Я пробовал кастинг и преобразовывал значения в SQL-запрос в varchar безрезультатно. Я попробовал as.character() вокруг всего запроса, но просто получил «Inf» в виде строки.
library(RODBC)
myConn <- odbcConnect('ServerName')
sqlQuery(myConn, "SELECT DISTINCT TOP 1 Sku, ProdUrl FROM dbo.GSR_Aux_Source WHERE Sku = '19E378')
Как я могу получить R для отображения значения в виде строки вместо того, чтобы пытаться интерпретировать его как число?
Эти столбцы входят в качестве факторов? Попробуйте 'options (stringAsFactors = FALSE)'. Этот аргумент также можно использовать в функции 'sqlQuery'. Кроме того, у любого, кто запустил ваш SQL Server, чтобы преобразовать эти столбцы в символ. – giraffehere
Выполняя больше исследований, попробуйте использовать аргумент 'as.is' в функции' sqlQuery'. – giraffehere
Научная нотация '19E378' является представлением числа' 19 * 10^378' (не для 19 до 378-й степени) – jogo