Match two variables list
2 次查看(过去 30 天)
显示 更早的评论
Is there a way to transalte across these variable lists
c = ["80ms,110ms", "110ms,140ms", "140ms,195ms", "195ms,250ms", "250ms,400ms", "400ms,550ms", "550ms,725ms", "725ms,900ms"]
Times = {[0.08, 0.11], [0.11, 0.14], [0.14, 0.195], [0.195, 0.25], [0.25, 0.4], [0.4, 0.55], [0.55, 0.725], [0.725, 0.9]}'
such that if I have str.Var1 = {'80ms,110ms'} I can convert it to Times(1) = [0.08, 0.11]?
I am using the first variable to inform what the input should be (second variable) in a statistics test. So whatever value str.Var1 matches in c I get the correspomding value in Times.
> str.Var1
ans =
1×1 cell array
{'80ms,110ms'}
>> Times(1)
ans =
1×1 cell array
{1×2 double}
0 个评论
采纳的回答
更多回答(1 个)
Les Beckham
2022-8-19
编辑:Les Beckham
2022-8-19
Perhaps what you want is this:
c = ["80ms,110ms", "110ms,140ms", "140ms,195ms", "195ms,250ms", "250ms,400ms", "400ms,550ms", "550ms,725ms", "725ms,900ms"];
Times = {[0.08, 0.11], [0.11, 0.14], [0.14, 0.195], [0.195, 0.25], [0.25, 0.4], [0.4, 0.55], [0.55, 0.725], [0.725, 0.9]}';
str.Var1 = {'80ms,110ms'};
cellresult = Times(strcmp(str.Var1, c));
result = cellresult{1} % extract the double vector from the cell
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Object Properties 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!