Проблеми
Як визначити RxTextData функцію для використання в "|" як роздільник або іншого характеру?
Рішення
Якщо текст даних не розділені комами або вкладки, необхідно вказати роздільник, використовуючи columnDelimiters аргумент. (Це не фактично аргумент rxImport, але для основного RxTextData вихідний об'єкт). У звичайному, цей аргумент – це один символ, наприклад, columnDelimiters = "\t" дані із символами табуляції або columnDelimiters = "," даних із роздільниками комами. Проте може комами стовпців на інший характер; Усі роздільників має об'єднаний разом на один символ рядок. Наприклад, якщо у вас є один стовпець, Розділений комами, другий знак "плюс" і третій за допомогою нового лінії, скористайтеся аргумент-columnDelimiters = ", + \n".
ідентифікатор | val
1 |
2 | b
Таким чином, для вище даних, як виправити в нижче код потрібно взяти до уваги "|" як на delimeter
hdfsFS <- RxHdfsFileSystem(hostName=”dummy ", port="dummy") txtSource <- RxTextData("directory value/ file_name in hdfs", fileSystem=hdfsFS)
airData <- rxImport(inData=txtSource, outFile = "/tmp/test.xdf",stringsAsFactors = TRUE, missingValueString = "M", rowsPerRead = 200000, overwrite=TRUE)
rxSummary(~ id+val, data = airData)
2). щоб мати можливість прочитати, "передайте" – Роздільник даних, слід установити параметр "Роздільник =" | "" у вашому RxTextData():
txtSource <- RxTextData(("directory value/ file_name in hdfs", fileSystem=hdfsFS, delimiter = "|")