1

I have a data file that contains several character variables that only consist of numbers. They need to remain character variables as some of them start with a 0 and when converting to integer/numeric, the leading zeros are cut-off. For some strange reason, when I use fwrite to save my data file as csv and then open it again with fread, the character variables that only consisted of numbers are suddenly integer variables. How can I keep R from doing this?

> str(Dataset_Master)
Classes ‘data.table’ and 'data.frame':  12178669 obs. of  4 variables:
 $ Date_of_goods_arrival_at_the_customer: int  20160527 20160527 20160527...
 $ Sales_document                       : chr  "0505399186" "0505435949"...
 $ Warehouse                            : chr  "8150" "8150" "8150" "8150" ...
 $ Sold_to_country                      : chr  "DE" "DE" "DE" "DE" ...
 - attr(*, ".internal.selfref")=<externalptr> 

> ##Save document
>   fwrite(Dataset_Master, "Dataset_Master_3.csv")

> ##Load data
>     Dataset_Master <- fread("Dataset_Master_3.csv")
|--------------------------------------------------|
|==================================================|
> str(Dataset_Master)
Classes ‘data.table’ and 'data.frame':  12178669 obs. of  4 variables:
 $ Date_of_goods_arrival_at_the_customer: int  20160527 20160527 20160527...
 $ Sales_document                       : int  505399186 505435949 505435949...
 $ Warehouse                            : int  8150 8150 8150 8150 8150 8150...
 $ Sold_to_country                      : chr  "DE" "DE" "DE" "DE" ...
 - attr(*, ".internal.selfref")=<externalptr> 
Jenny We
  • 105
  • 8
  • 3
    See [`?data.table::fread`](https://www.rdocumentation.org/packages/data.table/versions/1.12.2/topics/fread), specifically where it talks about `colClasses`. (Loosely related: https://stackoverflow.com/q/2805357/3358272) – r2evans Jul 14 '19 at 11:41

0 Answers0