Closed carlganz closed 8 years ago
Hi,
Thanks for the report.
I can confirm your finding on my Mac, running R 3.3.0.
However, if I write 'mtcars' to an XLSX file:
WriteXLS(mtcars, "mtcars.xlsx")
and then read that file back in with read_excel():
read_excel("mtcars.xlsx")
I get a data frame with 11 columns:
str(read_excel("mtcars.xlsx")) Classes ‘tbl_df’, ‘tbl’ and 'data.frame': 32 obs. of 11 variables: $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ... $ cyl : num 6 6 4 6 8 6 8 4 4 6 ... $ disp: num 160 160 108 258 360 ... $ hp : num 110 110 93 110 175 105 245 62 95 123 ... $ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ... $ wt : num 2.62 2.88 2.32 3.21 3.44 ... $ qsec: num 16.5 17 18.6 19.4 17 ... $ vs : num 0 0 1 1 0 1 0 1 1 1 ... $ am : num 1 1 1 0 0 0 0 0 0 0 ... $ gear: num 4 4 4 3 3 3 3 4 4 4 ... $ carb: num 4 4 1 1 2 1 4 2 2 4 ...
Trying to use the XLConnect package to read the XLS file:
str(readWorksheetFromFile("mtcars.xls", sheet = 1)) 'data.frame': 32 obs. of 11 variables: $ mpg : num 21 21 22.8 21.4 18.7 18.1 14.3 24.4 22.8 19.2 ... $ cyl : num 6 6 4 6 8 6 8 4 4 6 ... $ disp: num 160 160 108 258 360 ... $ hp : num 110 110 93 110 175 105 245 62 95 123 ... $ drat: num 3.9 3.9 3.85 3.08 3.15 2.76 3.21 3.69 3.92 3.92 ... $ wt : num 2.62 2.88 2.32 3.21 3.44 ... $ qsec: num 16.5 17 18.6 19.4 17 ... $ vs : num 0 0 1 1 0 1 0 1 1 1 ... $ am : num 1 1 1 0 0 0 0 0 0 0 ... $ gear: num 4 4 4 3 3 3 3 4 4 4 ... $ carb: num 4 4 1 1 2 1 4 2 2 4 ...
So that package appears to get all 11 columns.
Thus, at least based upon the above, it suggests that readxl may have some issues in reading an XLS file for some reason.
Hope this helps in moving forward.
Marc
Hello,
I have found that if I write an XLS with
WriteXLS
and then read it withreadxl::read_excel
I lose a column even though the actual XLS document has all the columns. Here is a reproducible example:The rightmost column is not read in.
I have no idea whether this is an issue with
WriteXLS
orreadxl
but I will file an issue withreadxl
as well to be safe.Thanks for the wonderful package.
Regards