delete data of csv file

16 views (last 30 days)
SINDU GOKULAPATI
SINDU GOKULAPATI on 24 Mar 2021
Edited: SINDU GOKULAPATI on 16 May 2021
i have created a code such that data is appended to csv file every time the loop runs
but when i run the program again the new data is added with the old one
but i want to clear out the data in then csvfile before hand
what command do i use
delete('xyz.csv') deletes the whole file
  4 Comments
Merve Buyukbas
Merve Buyukbas on 24 Mar 2021
But you shouldn't count on the main directory and instead use full paths everywhere in your script. This way the data can be located anywhere independently on where the code is.
SINDU GOKULAPATI
SINDU GOKULAPATI on 24 Mar 2021
im sorry i dont know if im not explaning properly
i have a csv file with all numbers it self ,let that be just 3 cells in my csv with data 1,2,3
if i open csv file i can see those three cells only
now using code in matlab i want to erase those
so now when i open that csv file it should be empty
there is no .txt or sring data
hope my question is conveys right

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 24 Mar 2021
fclose(fopen('xyz.csv', 'w'));
When you open a file for writing with 'w' access, the existing content is discarded.
Note: the POSIX standard library specifies truncate() and ftruncate() functions that would be a closer match. However, MATLAB does not implement either of those.
  6 Comments
Walter Roberson
Walter Roberson on 12 May 2021
csvread() calls dlmread() with delimiter ','
You are writing to a file that is not necesarily in the same place as you are reading from, as your current directory is not necessarily D:\sem6\PROJECT
SINDU GOKULAPATI
SINDU GOKULAPATI on 16 May 2021
Edited: SINDU GOKULAPATI on 16 May 2021
hey walter i specified the directory but still giving error,
for context
for i=1:n
for j=1:n
angle = transpose(rnorm{i})*rnorm{j};
if angle > cosd(20) && angle <= cosd(0)
matrix = [i,j,angle];
dlmwrite('D:\sem6\PROJECT\on.csv',(matrix),'-append')
end
end
k=0;
s=dlmread('D:\sem6\PROJECT\on.csv',',',1,2);
store= histcounts(s); //need histogram for each point wrt to angle subjected to other points
fclose(fopen('D:\sem6\PROJECT\on.csv','w')); //to rewite for every 'i'
end
ps: i have attachec csv file with 50 rnorm value (intended output is 50 histograms)

Sign in to comment.

More Answers (0)

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!