Adding semicolon into data

9 次查看(过去 30 天)
Hi guys, I'm using Matlab 2014b (I don't have access to a better version) and I have a set of data like this:
A=x1,x2,x3,x4,x5,x6,...,xn
I need to add a semicolon for every pair, so I get sth like this:
A=x1,x2;x3,x4;...;xn-1,xn
How can I do that?
I created A using dlmwrite, but when I try to use delimeter in this function I get the following error:
"Delimeter is not a valid attribute or delimiter. Delimiter must be a single character"
Can anybody help?
I don't have access to writematrix function.
  2 个评论
the cyclist
the cyclist 2019-10-31
I'm confused.
When you say you have "a set of data" ... what exactly do mean? Is A a MATLAB (numeric) row vector?
Are you trying to write that vector to a file? With some semicolons?
Also, is it possible that part of the problem is that you misspelled the word "delimiter", which is why MATLAB couldn't interpret it?
Lucas Stadnik
Lucas Stadnik 2019-10-31
编辑:Lucas Stadnik 2019-10-31
I had two vectors:
x=(x1,x2,x3,...,xn)
y=(y1,y2,y3,...,yn)
Then,
z=[x(:),y(:)] ';
dlmwrite('z.txt',z)
This what I've done so far and I get this the txt file like this:
z=(x1,y1,x2,y2,y3,...,xn,yn);
Actually, it worked, but the semicolon is added for every single point, not for every pair
dlmwrite('z.txt',z,'delimeter',';')

请先登录,再进行评论。

采纳的回答

Lucas Stadnik
Lucas Stadnik 2019-10-31
From another post:
Try this low-level code:
-----------------------------------------
x = randi(9,[1,2*6001]); % ACTUAL DATA
fileID = fopen('data.txt','w');
for k = 1:2:numel(x)-1
fprintf(fileID,'%g,%g;',x(k),x(k+1));
end
fclose(fileID);
-----------------------------------------
Enjoy!

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by