Error while using readtable command in MATLAB
267 views (last 30 days)
Show older comments
Ahmad Bilal
on 20 Mar 2018
Commented: Image Analyst
on 6 Jan 2023
Hi I have one question. I have downloaded one csv template file with .csv extension from Internet. Then I simply converted this .csv file into .dat extension.
filename = fullfile('Desktop','ABC','breslow.dat') %here breslow.dat is my file
Then i try to execute this command :
T =readtable(filename)
when i execute this it shows an error such as:
Error using readtable (line 198)
Unable to open file 'Desktop\ABC\breslow.dat'.
Can anybody help me in this regard ?? Thank you
1 Comment
Luciano Nascimento
on 27 Dec 2022
redatable precisa ser aberto com o caminho do diretorio + file. neste exemplo o que está pedindo para abrir é o arquivo somente sem o diretorio completo, ai da erro.
Accepted Answer
Image Analyst
on 21 Mar 2018
Try it this way:
folder = 'C:\Users\Bilal Ahmad\Desktop\ABC';
fullFileName = fullfile(folder, 'breslow.dat')
0 Comments
More Answers (4)
Jan
on 20 Mar 2018
This does mean, that there is no such file. Note that the relative path 'Desktop\ABC\breslow.dat' is interpreted relative to the current directory as replied by the cd command. Most likely this current directory is not what you expect it to be. Prefer absolute path names to avoid such problems.
5 Comments
Steven Lord
on 5 Jan 2023
You haven't showed us the code that creates the variable X that you pass into readtable on line 45 of your trail.m file. But unless you have a folder named MATLAB_scripts_Ashish inside another folder named MATLAB_scripts_Ashish (which would be your current folder) the file you have circled in green in the Current Folder window in your screen shot is not the file you're telling your trail script to read on line 45.
Even if that is the file you intended your code to read, the file in the Current Folder does not have the extension .txt. Its extension is "rec1066-2(4244)".
Image Analyst
on 6 Jan 2023
We know from the files you attached in your other question that all your data was in a single line, instead of the first line being column headers and the data being below that, meaning that it was trying to make some columns (fields) names from numbers. You can't do that. You can have a table field called "mean" or "data" or whatever but you can't have a field called "-0.542" or "#####".
Ahmad Bilal
on 20 Mar 2018
Edited: Walter Roberson
on 21 Mar 2018
4 Comments
Stephen23
on 21 Mar 2018
Edited: Stephen23
on 21 Mar 2018
@Ahmad Bilal: read Jeremy Hughes' comment again: the path you are searching for does not exist because you cd to a directory, and then use fullfile to build a relative path that does not exist in that location. If you have cd-ed to the directory ABC then all you need is
filename = 'breslow.dat';
However you should avoid cd completely, because it just slows code down and makes debugging harder. As the others have already written: use an absolute filepath, just as Image Analyst already showed you.
narimen boucenna
on 16 Jul 2020
is there any command i can use instead of
readtable
? i have matlab 2009 and i dont have this command in it
1 Comment
Image Analyst
on 16 Jul 2020
Wow, that is an antique. Try other functions like dlmread(), csvread(), importdata(), xlsread(), textscan(), etc.
Mahuya
on 19 Nov 2022
To use readtable() function without any error you have to upload your file (from where you want to fetch data)into matlab drive/the folder you are using for matlab files. Then you can successfully able to fetch data from that file.
1 Comment
Image Analyst
on 19 Nov 2022
See Also
Categories
Find more on File Operations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!