## Convert Strings into vectors of binary numbers

on 25 Jan 2013

### Jan Simon (view profile)

I need to convert utterance strings into vectors where each dimension of the vector represents a unique word, while reading the script from an m.file. So for example if I have, out='hello' 'my' 'name' 'is' 'sam'. I want a vector with binary numbers where hello is true and everything else is false.

Solution would be output=[1,0,0,0] How can I do this? Here is what I have so far

fid=fopen('sw4325.m')

>> firstline=fgets(fid);

>> sprintf(firstline);

>> splitstring=textscan(ans, '%s');

>> out=splitstring{:};

## Products

No products are associated with this question.

### Jan Simon (view profile)

on 25 Jan 2013

I do not get it. Do you want STRCMP?

```str = {'hello' 'my' 'name' 'is' 'sam'};
match = strcmp('hello', str);
```

Sam

### Sam (view profile)

on 25 Jan 2013

Thank Jan, your code does work for strings. But I have my data in a cell of strings, and it won't work for it. Here is my code f=fopen(‘hello.m’) firstline=fgets(f) sprint(firstline) splitstring=textscan(ans, ‘%s’) out=splitstring{:}

Do I need to convert this into strings first? If so, how do I do that, I'm new to Matlab, and I usually use Java so it's a little confusing

Jan Simon

### Jan Simon (view profile)

on 28 Jan 2013

Sorry, I do not understand which data are strings and which are cell strings. Using ans directly is prone to errors. Better split the string explicitly, e.g. out = regexp(firstline, ' ', 'split'). And then please explain again the type of the inputs. Either strcmp or ismember should solve the problem.

Samira

### Samira (view profile)

on 28 Jan 2013

Yes it works, thank you so much.

#### Join the 15-year community celebration.

Play games and win prizes!

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

### Discover what MATLAB® can do for your career.

Apply Today

New to MATLAB?

Learn MATLAB today!