在 MATLAB 中,我在文件名 A.txt 中有一个 1 X 20 的字符串数据列向量。
%Input in A.txt:
60N
61N
50S
51S
目的:将数据列读取为整数并表示N
为正,S 为负。
所以输出将是:
60
61
-50
-51
我研究过其他帖子,申请 str2num double。我完全被困住了。
假设您的数据像您的示例中那样组成,您可以尝试以下操作:
[nums, directions] = textread('test.txt', '%d%s'); %# Read data from file
signs = ones(size(directions)); %# Assume signs are positive
signs(strcmp(directions, 'S')) = -1; %# Replace 'S' with negatives
result = nums(:) .* signs(:) %# Calculate result