How can a 4 element array index pull stored string values?
1 ビュー (過去 30 日間)
Hi all, I am new to MATLAB and I'm a bit stuck trying to figure out this part.
Let's say I have a 4 element vector [1x4 double] stored called "fourElementVector" (I have a function that changes these numbers a bit, situationally)
I also have a 256x1 cell "HexData" that stores a bunch of hexadecimal strings (ranging from 16bit to 128bit)
I'm trying to make the fourElementVector be the index and pull the values stored in HexData and store them as a string like:
[0B287 0B287 0B287 0B287] (just for an example. I don't want them converted)
The 4vector will always have a stored index numbers ranging from 1 - 256, and I have 256 hex codes, so it matches.
What do you think? How might I achieve this?
Scott MacKenzie 2021 年 6 月 18 日
編集済み: Scott MacKenzie 2021 年 6 月 18 日
I think this is more or less what you are after. The output is generated both as a cell array and as a string vector.
% create random 16-bit hex values (as strings)
h = '0123456789abcdef'
idx = randi([1 16], 256, 4);
hexDataChar = h(idx);
% convert to 256x1 cell array of hex values
hexData = cellstr(hexDataChar);
% four element vector of indices
idx = randi([1 256], 1, 4);
% get four hex values from cell array
result1 = hexData(idx)
result2 = string(result1)
4×1 cell array
4×1 string array
その他の回答 (1 件)
the cyclist 2021 年 6 月 18 日
Can you upload examples of your variables fourElementVector and HexData, in a MAT file? This would be helpful.
But it seems from your description that
might do what you intend?