I am trying to import data from a file. If I import a CSV file, I get:
{{a,b,c},{e,f,g}}.
For example, two curly brackets.
If importing from a .xlsx file I get an extra curly bracket like:
{{{a,b,c},{e,f,g}}}
Why does this happen?
CSV:
Import["file.csv"] imports a CSV file, returning an array.
whereas
XLSX:
Import["file.xlsx"] imports all sheets of an XLSX file, returning the result as a list of arrays.
If the file contains a single sheet, you can eliminate the extra curly braces using the second argument of Import
as in @bobthechemist's answer, or simply using Part
:
Import["<file.xlsx>"][[1]]
As mentioned in the comments and the documentation, importing from Excel files allows for multiple sheets. Thus, a single-sheet file will have what you refer to as an "extra" pair of curly braces. To eliminate this behavior, use:
Import["<file.xlsx>",{"Data",1}]
The above command will import just the first datasheet.