Thanks so much for your suggestions! Will try them out! Santosh On Wed, Mar 22, 2017 at 12:17 PM, Matt Dowle <mattjdowle at gmail.com> wrote:> Thanks Bill for cc. > > Santosh, > > I'm almost certain you don't have package bit64 installed. When you do it > works fine : > > > remove.packages("bit64") > > data.table::fread("9876543210\n") > V1 > 1: 4.879661e-314 > > install.packages("bit64") > > data.table::fread("9876543210\n") > V1 > 1: 9876543210 > > News for data.table v1.10.2 on CRAN 31 Jan 2017 contained : > > * When fread() or print() see integer64 columns are present, bit64's > namespace is now automatically loaded for convenience. > > However, when data.table loads the namespace there is a bug in this > function : > > > data.table:::require_bit64 > function () > { > tt = try(requireNamespace("bit64", quietly = TRUE)) > if (inherits(tt, "try-error")) > warning("Some columns are type 'integer64' but package bit64 is > not installed. Those columns will print as strange looking floating point > data. There is no need to reload the data. Simply install.packages('bit64') > to obtain the integer64 print method and print the data again.") > } > > The intent was to display that nice helpful message to you. Due to this > report, I can see now that I shouldn't have wrapped requireNamespace() with > try() because requireNamespace() returns TRUE or FALSE anyway. Even though > requireNamespace() prints 'Failed with error' it doesn't actually throw an > error. I'll change data.table's function to the following : > > if (!requireNamespace("bit64", quietly = TRUE)) > warning("Some columns ...") > > bit64 is correctly Suggests not Depends. It's just unfortunate the > intended message wasn't displayed. > > Santosh, in future please follow the data.table support guide here: > https://github.com/Rdatatable/data.table/wiki/Support. r-help is not > supposed to be used for package support. The main thing though is thanks > for helping me find this bug. > > Thanks, > Matt > > > On Wed, Mar 22, 2017 at 10:22 AM, William Dunlap <wdunlap at tibco.com> > wrote: > >> Here is a way to reproduce the problem: >> > data.table::fread("9876543210\n") # number bigger than 2^31-1 >> V1 >> 1: 4.879661e-314 >> and your work-around does fix things up >> > data.table::fread("9876543210\n", colClasses="numeric") >> V1 >> 1: 9876543210 >> >> Bill Dunlap >> TIBCO Software >> wdunlap tibco.com >> >> >> On Wed, Mar 22, 2017 at 9:58 AM, Jeff Newmiller >> <jdnewmil at dcn.davis.ca.us> wrote: >> > You failed to provide a reproducible example, and you posted HTML so >> the quality of any answer will be limited by the quality of your question. >> > >> > My stab at your problem is that you should read ?fread, and in >> particular should try using the colClasses argument. >> > -- >> > Sent from my phone. Please excuse my brevity. >> > >> > On March 22, 2017 8:52:55 AM PDT, Santosh <santosh2005 at gmail.com> >> wrote: >> >>Hi >> >> >> >>I have been using "fread" utility of "data.table" packge .. on a >> >>dataset of >> >>about 20 million rows. It's a fantastic package to read datasets. Thank >> >>you, Matt D. >> >> >> >>However, I am faced with a peculiar instance of certain numbers in a >> >>column being transformed. >> >> >> >>In the dataset, a column has values ranging from 1 to 9########## >> >>(nchar(x)=11, e.g. 98765432109). After using "fread" to read the >> >>dataset, >> >>values in all the columns are displayed correctly upto the first 1000 >> >>rows. >> >>If "fread" is applied for reading >1000 rows of the total of 20Million >> >>rows, the values in only this (column (having wide range of values) are >> >>displayed as x.xxxxxxxe-3yy. (e.g. 3.5639877e-324) >> >> >> >>I tried reading all the columns as "character" and didn't help. >> >> >> >>Would highly appreciate your assistance! >> >> >> >>Thanks so much in advance. >> >> >> >>Best regards, >> >>Santosh >> >> >> >> [[alternative HTML version deleted]] >> >> >> >>______________________________________________ >> >>R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >> >>https://stat.ethz.ch/mailman/listinfo/r-help >> >>PLEASE do read the posting guide >> >>http://www.R-project.org/posting-guide.html >> >>and provide commented, minimal, self-contained, reproducible code. >> > >> > ______________________________________________ >> > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >> > https://stat.ethz.ch/mailman/listinfo/r-help >> > PLEASE do read the posting guide http://www.R-project.org/posti >> ng-guide.html >> > and provide commented, minimal, self-contained, reproducible code. >> > >[[alternative HTML version deleted]]
Dear Rxperts.. I am using R version 3.2.3 on Linux.. it says bit64 is not available for R version 3.2.3.. Thanks and your assistance much appreciated! Best regards, Santosh On Wed, Mar 22, 2017 at 7:50 PM, Santosh <santosh2005 at gmail.com> wrote:> Thanks so much for your suggestions! Will try them out! > > Santosh > > On Wed, Mar 22, 2017 at 12:17 PM, Matt Dowle <mattjdowle at gmail.com> wrote: > >> Thanks Bill for cc. >> >> Santosh, >> >> I'm almost certain you don't have package bit64 installed. When you do >> it works fine : >> >> > remove.packages("bit64") >> > data.table::fread("9876543210\n") >> V1 >> 1: 4.879661e-314 >> > install.packages("bit64") >> > data.table::fread("9876543210\n") >> V1 >> 1: 9876543210 >> >> News for data.table v1.10.2 on CRAN 31 Jan 2017 contained : >> >> * When fread() or print() see integer64 columns are present, bit64's >> namespace is now automatically loaded for convenience. >> >> However, when data.table loads the namespace there is a bug in this >> function : >> >> > data.table:::require_bit64 >> function () >> { >> tt = try(requireNamespace("bit64", quietly = TRUE)) >> if (inherits(tt, "try-error")) >> warning("Some columns are type 'integer64' but package bit64 is >> not installed. Those columns will print as strange looking floating point >> data. There is no need to reload the data. Simply install.packages('bit64') >> to obtain the integer64 print method and print the data again.") >> } >> >> The intent was to display that nice helpful message to you. Due to this >> report, I can see now that I shouldn't have wrapped requireNamespace() with >> try() because requireNamespace() returns TRUE or FALSE anyway. Even though >> requireNamespace() prints 'Failed with error' it doesn't actually throw an >> error. I'll change data.table's function to the following : >> >> if (!requireNamespace("bit64", quietly = TRUE)) >> warning("Some columns ...") >> >> bit64 is correctly Suggests not Depends. It's just unfortunate the >> intended message wasn't displayed. >> >> Santosh, in future please follow the data.table support guide here: >> https://github.com/Rdatatable/data.table/wiki/Support. r-help is not >> supposed to be used for package support. The main thing though is thanks >> for helping me find this bug. >> >> Thanks, >> Matt >> >> >> On Wed, Mar 22, 2017 at 10:22 AM, William Dunlap <wdunlap at tibco.com> >> wrote: >> >>> Here is a way to reproduce the problem: >>> > data.table::fread("9876543210\n") # number bigger than 2^31-1 >>> V1 >>> 1: 4.879661e-314 >>> and your work-around does fix things up >>> > data.table::fread("9876543210\n", colClasses="numeric") >>> V1 >>> 1: 9876543210 >>> >>> Bill Dunlap >>> TIBCO Software >>> wdunlap tibco.com >>> >>> >>> On Wed, Mar 22, 2017 at 9:58 AM, Jeff Newmiller >>> <jdnewmil at dcn.davis.ca.us> wrote: >>> > You failed to provide a reproducible example, and you posted HTML so >>> the quality of any answer will be limited by the quality of your question. >>> > >>> > My stab at your problem is that you should read ?fread, and in >>> particular should try using the colClasses argument. >>> > -- >>> > Sent from my phone. Please excuse my brevity. >>> > >>> > On March 22, 2017 8:52:55 AM PDT, Santosh <santosh2005 at gmail.com> >>> wrote: >>> >>Hi >>> >> >>> >>I have been using "fread" utility of "data.table" packge .. on a >>> >>dataset of >>> >>about 20 million rows. It's a fantastic package to read datasets. Thank >>> >>you, Matt D. >>> >> >>> >>However, I am faced with a peculiar instance of certain numbers in a >>> >>column being transformed. >>> >> >>> >>In the dataset, a column has values ranging from 1 to 9########## >>> >>(nchar(x)=11, e.g. 98765432109). After using "fread" to read the >>> >>dataset, >>> >>values in all the columns are displayed correctly upto the first 1000 >>> >>rows. >>> >>If "fread" is applied for reading >1000 rows of the total of 20Million >>> >>rows, the values in only this (column (having wide range of values) are >>> >>displayed as x.xxxxxxxe-3yy. (e.g. 3.5639877e-324) >>> >> >>> >>I tried reading all the columns as "character" and didn't help. >>> >> >>> >>Would highly appreciate your assistance! >>> >> >>> >>Thanks so much in advance. >>> >> >>> >>Best regards, >>> >>Santosh >>> >> >>> >> [[alternative HTML version deleted]] >>> >> >>> >>______________________________________________ >>> >>R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>> >>https://stat.ethz.ch/mailman/listinfo/r-help >>> >>PLEASE do read the posting guide >>> >>http://www.R-project.org/posting-guide.html >>> >>and provide commented, minimal, self-contained, reproducible code. >>> > >>> > ______________________________________________ >>> > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>> > https://stat.ethz.ch/mailman/listinfo/r-help >>> > PLEASE do read the posting guide http://www.R-project.org/posti >>> ng-guide.html >>> > and provide commented, minimal, self-contained, reproducible code. >>> >> >> >[[alternative HTML version deleted]]
A) You have been given a workaround (colClasses). B) 3.2.3 is not the current version of R. Support for older versions may vary from CRAN mirror to mirror. You could try another mirror. C) Technically, "Linux" is not an operating system, it is a kernel. Debian and Fedora are examples of operating systems, and instructions for installing and upgrading R on them are different. They also have dedicated R mailing lists, and separate instructions for installing and upgrading on them are available on CRAN. D) Typically OS's based on Linux install from source, and the bit64 package only depends on R >= 3.0.1, so this seems like your R is just not configured to look in an appropriate place for the package. You would have to provide more details on your setup to get help from any R mailing list. -- Sent from my phone. Please excuse my brevity. On March 22, 2017 7:54:25 PM PDT, Santosh <santosh2005 at gmail.com> wrote:>Dear Rxperts.. >I am using R version 3.2.3 on Linux.. it says bit64 is not available >for R >version 3.2.3.. > >Thanks and your assistance much appreciated! >Best regards, >Santosh > > >On Wed, Mar 22, 2017 at 7:50 PM, Santosh <santosh2005 at gmail.com> wrote: > >> Thanks so much for your suggestions! Will try them out! >> >> Santosh >> >> On Wed, Mar 22, 2017 at 12:17 PM, Matt Dowle <mattjdowle at gmail.com> >wrote: >> >>> Thanks Bill for cc. >>> >>> Santosh, >>> >>> I'm almost certain you don't have package bit64 installed. When you >do >>> it works fine : >>> >>> > remove.packages("bit64") >>> > data.table::fread("9876543210\n") >>> V1 >>> 1: 4.879661e-314 >>> > install.packages("bit64") >>> > data.table::fread("9876543210\n") >>> V1 >>> 1: 9876543210 >>> >>> News for data.table v1.10.2 on CRAN 31 Jan 2017 contained : >>> >>> * When fread() or print() see integer64 columns are present, bit64's >>> namespace is now automatically loaded for convenience. >>> >>> However, when data.table loads the namespace there is a bug in this >>> function : >>> >>> > data.table:::require_bit64 >>> function () >>> { >>> tt = try(requireNamespace("bit64", quietly = TRUE)) >>> if (inherits(tt, "try-error")) >>> warning("Some columns are type 'integer64' but package bit64 >is >>> not installed. Those columns will print as strange looking floating >point >>> data. There is no need to reload the data. Simply >install.packages('bit64') >>> to obtain the integer64 print method and print the data again.") >>> } >>> >>> The intent was to display that nice helpful message to you. Due to >this >>> report, I can see now that I shouldn't have wrapped >requireNamespace() with >>> try() because requireNamespace() returns TRUE or FALSE anyway. Even >though >>> requireNamespace() prints 'Failed with error' it doesn't actually >throw an >>> error. I'll change data.table's function to the following : >>> >>> if (!requireNamespace("bit64", quietly = TRUE)) >>> warning("Some columns ...") >>> >>> bit64 is correctly Suggests not Depends. It's just unfortunate the >>> intended message wasn't displayed. >>> >>> Santosh, in future please follow the data.table support guide here: >>> https://github.com/Rdatatable/data.table/wiki/Support. r-help is >not >>> supposed to be used for package support. The main thing though is >thanks >>> for helping me find this bug. >>> >>> Thanks, >>> Matt >>> >>> >>> On Wed, Mar 22, 2017 at 10:22 AM, William Dunlap <wdunlap at tibco.com> >>> wrote: >>> >>>> Here is a way to reproduce the problem: >>>> > data.table::fread("9876543210\n") # number bigger than 2^31-1 >>>> V1 >>>> 1: 4.879661e-314 >>>> and your work-around does fix things up >>>> > data.table::fread("9876543210\n", colClasses="numeric") >>>> V1 >>>> 1: 9876543210 >>>> >>>> Bill Dunlap >>>> TIBCO Software >>>> wdunlap tibco.com >>>> >>>> >>>> On Wed, Mar 22, 2017 at 9:58 AM, Jeff Newmiller >>>> <jdnewmil at dcn.davis.ca.us> wrote: >>>> > You failed to provide a reproducible example, and you posted HTML >so >>>> the quality of any answer will be limited by the quality of your >question. >>>> > >>>> > My stab at your problem is that you should read ?fread, and in >>>> particular should try using the colClasses argument. >>>> > -- >>>> > Sent from my phone. Please excuse my brevity. >>>> > >>>> > On March 22, 2017 8:52:55 AM PDT, Santosh <santosh2005 at gmail.com> >>>> wrote: >>>> >>Hi >>>> >> >>>> >>I have been using "fread" utility of "data.table" packge .. on a >>>> >>dataset of >>>> >>about 20 million rows. It's a fantastic package to read datasets. >Thank >>>> >>you, Matt D. >>>> >> >>>> >>However, I am faced with a peculiar instance of certain numbers >in a >>>> >>column being transformed. >>>> >> >>>> >>In the dataset, a column has values ranging from 1 to 9########## >>>> >>(nchar(x)=11, e.g. 98765432109). After using "fread" to read the >>>> >>dataset, >>>> >>values in all the columns are displayed correctly upto the first >1000 >>>> >>rows. >>>> >>If "fread" is applied for reading >1000 rows of the total of >20Million >>>> >>rows, the values in only this (column (having wide range of >values) are >>>> >>displayed as x.xxxxxxxe-3yy. (e.g. 3.5639877e-324) >>>> >> >>>> >>I tried reading all the columns as "character" and didn't help. >>>> >> >>>> >>Would highly appreciate your assistance! >>>> >> >>>> >>Thanks so much in advance. >>>> >> >>>> >>Best regards, >>>> >>Santosh >>>> >> >>>> >> [[alternative HTML version deleted]] >>>> >> >>>> >>______________________________________________ >>>> >>R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>>> >>https://stat.ethz.ch/mailman/listinfo/r-help >>>> >>PLEASE do read the posting guide >>>> >>http://www.R-project.org/posting-guide.html >>>> >>and provide commented, minimal, self-contained, reproducible >code. >>>> > >>>> > ______________________________________________ >>>> > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >>>> > https://stat.ethz.ch/mailman/listinfo/r-help >>>> > PLEASE do read the posting guide http://www.R-project.org/posti >>>> ng-guide.html >>>> > and provide commented, minimal, self-contained, reproducible >code. >>>> >>> >>> >> > > [[alternative HTML version deleted]] > >______________________________________________ >R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >https://stat.ethz.ch/mailman/listinfo/r-help >PLEASE do read the posting guide >http://www.R-project.org/posting-guide.html >and provide commented, minimal, self-contained, reproducible code.