Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

New to MATLAB?

can change the name of txt. file not manually

Asked by huda nawaf

huda nawaf (view profile)

on 6 Apr 2013

hi,

I have to run the following code sevral times, each time I have to change the name of files , I have to read 2 files and write one file. If I change the name of files manually , it takes long time . Are there a way by which can change the name not manually . i.e can do that x=2; in this case I change just x each running

f1=dlmread('d:\matlab\r2011a\bin\new_movielens1\netflix\sequences\part1_x.txt');
f4=dlmread('d:\matlab\r2011a\bin\new_movielens1\netflix\sequences\intersect_x.txt');
[p o]=size(f1);k=1;
for i=1:length(f4)
    seq1(i,:)=f1(f4(i),:);
seq2(i,:)=f2(f4(i),:);
seq3(i,:)=f3(f4(i),:);
end
  dlmwrite('d:\matlab\r2011a\bin\new_movielens1\netflix\sequences\com_eval_x.txt',seq3);

thanks in advance

0 Comments

huda nawaf

huda nawaf (view profile)

Tags

Products

No products are associated with this question.

1 Answer

Answer by Ahmed A. Selman

Ahmed A. Selman (view profile)

on 6 Apr 2013

If your filenames are part1_1.txt, part1_2.txt, part1_3.txt.. etc.,

and intersect_1.txt, intersect_2.txt.. etc.,

and want to write in files as com_eval_1.txt, com_eval_2.txt..etc., respectively,

use the following method:

name1='d:\matlab\r2011a\bin\new_movielens1\netflix\sequences\part1_';
name2='d:\matlab\r2011a\bin\new_movielens1\netflix\sequences\intersect_'; 
nameout='d:\matlab\r2011a\bin\new_movielens1\netflix\sequences\com_eval_';
ext='.txt';
   n=... ;% number of files
   for x=1:n
    F1_name=[name1,num2str(x),ext];
    F4_name=[name2,num2str(x),ext];
    OutName=[nameout,num2str(x),ext];
    f1=dlmread(F1_name);
    f4=dlmread(F4_name);
    [p o]=size(f1);k=1;
    for i=1:length(f4)
        seq1(i,:)=f1(f4(i),:);
        seq2(i,:)=f2(f4(i),:);
        seq3(i,:)=f3(f4(i),:);
     end
    dlmwrite(OutName,seq3);
  end 

1 Comment

huda nawaf

huda nawaf (view profile)

on 6 Apr 2013

Many thanks , I will try that

Ahmed A. Selman

Ahmed A. Selman (view profile)

Contact us