Create function for info extraction from .log file

Dear all,
I want to write a function that enables me to extract specific information from a .log file. I am only interested in Event type, code and time. I tried now for 2 hours without any result, I would be very grateful if someone could provide some help...

6 Comments

Have you tried the uiimport function?
yes, but then it says the file it not compatible...alternatively when I import it with the import function it is not really automatically done...
Can you share the file with us?
sadly not, it says "file cannot be attached because format is unsupported"
Change the extension to .m. Then you should be able to upload it.

Sign in to comment.

 Accepted Answer

Cedric
Cedric on 20 May 2014
Edited: Cedric on 20 May 2014
You should be able to extract these 3 columns as follows:
content = fileread( 'myFile.txt' ) ;
data = textscan( content, '%*s%*f%s%s%f%*[^\n]', 'HeaderLines', 5 ) ;
where data is a cell array whose 3 cells, data{1} to data{3} (note the curly brackets) contain the relevant columns.
EDITED to match the 5 header lines after seeing your file.

4 Comments

I think the call should be
data= textscan(fid,'%*s%f%s%s%*[^\n]','headerlines',5,'delimiter','\t')
The default is {'','\b','\t'}, so no need to specify I guess .. but I'll think about it; it might be more efficient if we specify explicitely the delimiter. Did you perform tests?
Its not about specifying the delimiter. Its about the formatspec you use. I think your first %*f is wrong.
Cedric
Cedric on 23 May 2014
Edited: Cedric on 23 May 2014
No actually, the screenshot doesn't represent well columns. The 0's and 1's belong to the Trial column. The first column that he wants is Event Type, and it is the column with 'Pulse', 'Picture', etc.

Sign in to comment.

More Answers (0)

Categories

Asked:

on 20 May 2014

Edited:

on 23 May 2014

Community Treasure Hunt

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

Start Hunting!