R преобразовать числовой вектор в строку с запятой - PullRequest
0 голосов
/ 18 февраля 2019

Чтение файла CSV в таблицу данных, извлечение первого столбца, а затем преобразование столбца в строку с запятой.Но формат строки с запятой является научным.

EAN <- fread(filepath,header=T,sep=",",select = c(1))

              EAN
  1:  17047048023
  2:  14190007787
  3:  11115000595
  4: 715480703234
  5:  27417500858
  6:  14130302041
  7:  12800011130
  8:  11111048172
  9:  14116342231
 10:  14133103116
 11:  17245798099

EANstr<- as.character(unique(EAN[,1])) # Преобразовать вектор в строку с запятой

Здесь вывод:

8.42236079117024e-314, 7.01079536177647e-314, 5.49153994749451e-314, 3.53494435730255e-312, 1.35460452687607e-313

Какизбежать преобразования и получить результат, как показано ниже

'17047048023,14190007787,11115000595,715480703234,27417500858'

Пробовал с использованием tostring и options(scipen = 999).Но не дает правильного результата.

1 Ответ

0 голосов
/ 19 февраля 2019

Отправка ответа на основе комментариев.

  1. во время чтения установите colClasses="character"

    EAN <- fread(upcListPath,header=T,sep=",",colClasses="character") EANstr <- toString(unique(EAN[,EANCol]))

Если вместо имени используется индекс, это создаст немного другую строку, которая потребует дальнейшего форматирования.Таким образом, приведенный ниже код дает различный вывод

 `EANstr <- toString(unique(EAN[,1]))`
Изменить тип данных столбца после чтения.

EANstr <- toString(unique(as.character(EAN[,EANCol])))

функция вставки после использования colclasses

EAN <- fread(upcListPath,header=T,sep=",",colClasses="character") EANstr <- paste(unique(EAN$EANCol),collapse=",")

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