अद्यतन अक्टू 2014 नहीं किया जा सकता: अब v1.9.5 में
fread
अब स्वीकार करता dec=','
(और अन्य गैर ' 'दशमलव विभाजक), #917। एक नया अनुच्छेद ?fread
में जोड़ा गया है। यदि आप ऐसे देश में स्थित हैं जो dec=','
का उपयोग करता है तो इसे केवल काम करना चाहिए। यदि नहीं, तो आपको एक अतिरिक्त चरण के लिए अनुच्छेद पढ़ने की आवश्यकता होगी। यदि यह किसी भी तरह dec='.'
तोड़ता है, तो यह नई सुविधा options(datatable.fread.dec.experiment=FALSE)
के साथ बंद कर दी जा सकती है।
पिछला जवाब ...
मैट Dowle स्थानों के साथ एक अच्छा काम के आसपास पाया।
Sys.localeconv()["decimal_point"]
decimal_point
"."
LC_NUMERIC स्थापित करने के लिए कोशिश कर रहा है उबंटू (मैथ्यू) और WinXP (मुझे)
Sys.setlocale("LC_NUMERIC", "French_France.1252")
[1] "French_France.1252"
Message d'avis :
In Sys.setlocale("LC_NUMERIC", "French_France.1252") :
changer 'LC_NUMERIC' peut résulter en un fonctionnement étrange de R
व्यवहार पर काम किया: सबसे पहले मेरी sessionInfo
sessionInfo()
R version 2.15.2 (2012-10-26)
Platform: i386-w64-mingw32/i386 (32-bit)
locale:
[1] LC_COLLATE=French_France.1252 LC_CTYPE=French_France.1252 LC_MONETARY=French_France.1252 LC_NUMERIC=C
[5] LC_TIME=C
...
निम्नलिखित कोशिश कर रहा अपराधी से पता चलता ठीक है और इस प्रकार बदलता है:
DT = fread("A,B\n3,14;123\n4,22;456\n",sep=";")
str(DT)
Classes ‘data.table’ and 'data.frame': 2 obs. of 2 variables:
$ V1: num 3.14 4.22
$ V2: int 123 456
"।" दशमलव विभाजक अब तारों के रूप में लोड किए गए हैं (जैसा कि यह होना चाहिए), यह पहले विपरीत था।
DT = fread("A,B\n3.14;123\n4.22;456\n",sep=";")
str(DT)
Classes ‘data.table’ and 'data.frame': 2 obs. of 2 variables:
$ V1: chr "3.14" "4.22"
$ V2: int 123 456
एक वर्कअराउंड के रूप में आप एक तेज़ टेक्स्ट एडिटर के साथ प्रतिस्थापित कर सकते हैं। – Roland
मैं कहूंगा कि "पैकेज रखरखाव से पूछें", खासकर जब से यह कार्य विकास में है: http://stackoverflow.com/questions/14124813/data-table-fread-function –
धन्यवाद रोलैंड लेकिन मेरे पास कई फाइलें हैं और कुछ तार हैं भविष्य में ',' हो सकता है ... और मैं वास्तव में उन्हें वैसे भी बदलना नहीं चाहता हूं। धन्यवाद – statquant