בעיה
כיצד לדעת את הפונקציה RxTextData לשימוש ' |' מפריד או תו אחר?
פתרון
אם הנתונים שלך טקסט אינו מופרד באמצעות פסיקים או טאבים, עליך לציין את התו המפריד באמצעות הארגומנט columnDelimiters. (זהו אינו למעשה ארגומנט rxImport, אך אובייקט מקור הנתונים המשמש כבסיס עבור RxTextData.) בשימוש רגיל, ארגומנט זה הוא תו יחיד, כגון columnDelimiters = "\t" עבור נתונים המופרד באמצעות טאבים או columnDelimiters = "," עבור נתונים המופרדים באמצעות פסיקים. עם זאת, ייתכן מופרד כל עמודה על-ידי תו שונה; יש שרשור את המפרידים יחד למחרוזת תו בודד. לדוגמה, אם יש לך עמודה אחת מופרד באמצעות פסיק, השני על-ידי סימן החיבור, ואת שלישית על-ידי שורה חדשה, תשתמש columnDelimiters ארגומנט = ", + \n".מזהה | val1 |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 = "|")