How to extract information from cell?

조회 수: 1 (최근 30일)
isabong
isabong 2011년 7월 20일
Hello
Well , i have a file which is a cell 47x1. In one of the rows have Lastname=Ahlers I only need Ahlers.The other case is when i have character +numbers, here I have dimension=2 only I need 2,other example is CollX=-5.9 only i need -5.9.
Any idea would be really appreciated guys thanks
Ah I dont know the last name or any data from the file. The idea would be to get the name or value. I need the values (numbers) to run my code,they are parameters inside of my code. Each file is a different patient and each patient has different values.

채택된 답변

Robert Cumming
Robert Cumming 2011년 7월 20일
use strfind to find the equal sign and then extract out the data to the right hand side of the equals, i.e.
NEWVAR = str2num(YOURCELL{YOUR_INDEX}(strfind ( YOURCELL{YOUR_INDEX}, '=' )+1:end))
in this case: you have a string "CollX=-5.9"
YOURCELL{1} = 'CollX=-5.9'
NEWVAR = str2num(YOURCELL{1}(strfind ( YOURCELL{1}, '=' )+1:end))
  댓글 수: 1
isabong
isabong 2011년 7월 20일
Thanks so much Robert...Very good solution. I dont really love programming but I love Matlab users.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Jan
Jan 2011년 7월 20일
E.g. by using STRTOK:
C = {'Lastname=Ahlers', 'dimension=2', 'CollX=-5.9'};
[dummy, C] = strtok(C, '=');
strrep(C, '=', '');
  댓글 수: 3
Jan
Jan 2011년 7월 20일
@isabong: Obviously I do not understand what you have and what you want. Sorry for trying to guess such details.
What does "I have a file which is a cell 47x1" mean exactly? And "I only need Ahlers"? Do you want to dremove the string "Lastname=" in the file? Or do you want to delete it in the cell string? Or do you want to get the string behind "Lastname=" as separate variable? You see, your question leave some space for interpretations.
isabong
isabong 2011년 7월 20일
so so take it easy, sorry sorry yes? forgive me please!
step by step,
1)What does "I have a file which is a cell 47x1" mean exactly? Means, That I have information,and the file contents some parameters that i need to get for my code.
2)And "I only need Ahlers"? Sorry, only I need everything to the right hand after '='.Not all rows, only for a specific rows.
3)Or do you want to delete it in the cell string? mmm I really dont care, only I need extract some information to the righ hand.
4)Or do you want to get the string behind "Lastname=" as separate variable? mmm no, I dont need it. Only I need the information to the right hand as a variable. I dont need the cell,only to extract some values or names.The values gotten will be used in my code. If the row is CollX=-6 (the right hand after '=' is -6),so i need to get -6, and it should be available to be read in my code and take it as a parameter.
5)You see, your question leave some space for interpretations.
It's true! sorry again. I hope to be clear ! thanks

댓글을 달려면 로그인하십시오.

카테고리

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