Create a new .dat file by editing an existing one

5 次查看(过去 30 天)
Hi,
Iv'e got a .dat file and I would like to edit it by removing some elements in the mid of the columns and adding zeros in the beggining and end of it. I used the folowing lines to enter the exisitng .dat file and then create a new one
data_in = dlmread('old_data.dat');
data_out = [data_in(:,1), data_in(:,2), data_in(:,3)];
save new_data.dat data_out -ASCII
How can we remove elements from some points of the 'old_data.dat' and add zeros in some other, so that the 'new_data.dat ' will have the same size with the first/exisitng one?
Any help would be greatly appreciated.
  8 个评论
per isakson
per isakson 2019-11-26
I cannot understand where you found the values
[6,2,2,3,3,1]
that you have assigned to the third column.
And "two values of 3rd column, 7 and 1, and added 2 zeros instead" is hard to interpret given your required matrix.
Anyhow "given your example can you modify M so that you eventulay get the following"
%% My example
M = [
9 9 4
9 6 6
5 1 2
8 8 7
2 9 1
4 7 3
9 7 1
8 7 1 ];
%%
M(2:7,3) = reshape( [6,2,2,3,3,1], [],1 );
M([1,8],3) = 0;
disp(M)
displays
9 9 0
9 6 6
5 1 2
8 8 2
2 9 3
4 7 3
9 7 1
8 7 0
which is identical to your required matrix of the previous comment. (In your previous example you shuffled the rows in a way that I failed to understand.)
Before trying to make useful code you need to

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Logical 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by