Я хотел бы перейти от этого: Увеличение адресов в строковом формате в Excel или Matlab?
к этому:
На либо превосходят или Matlab. Эта операция должна быть зациклирована на всей электронной таблице, и поэтому я скептически отношусь к тому, что у excel есть эффективный способ сделать это. Имейте в виду, что поле «Address Number» является строковой переменной.
Я загрузил электронную таблицу в виде массива Matlab Cell и подумываю об извлечении значений по одному, до и после дефиса, конвертации в double и приращения скрипта и заполнения нового массива, но это довольно далеко, Я не уверен, какие соответствующие команды.
Благодаря
Я сделал это несколько иначе, хотя ваш способ выглядит намного эффективнее: function [vector] = Increment (string) string = strsplit (строка, '-') len1 = Длина (строка {1,1}) len2 = длина (строка {1,2}) len3 = len1-len2 basenumber = 0 для г = 1: len3 basenumber = basenumber + str2double (строка {1, 1} (1, i)) * 10^(len1-i) end targetnumber = basenumber + str2double (строка (1,2)) firstnumber = str2double (строка (1,1)) vector = нули (номер цели -firstnumber + 1, 1) для i = 0: (номер -номер-firstnumber) вектор (i + 1) = firstnumber + i end – user32882