MATLAB: Convert datetime to milliseconds

datetimeMATLAB

Hello folks, I am trying to do a fourier transform of a signal, but I need a time vector like this: t(1) t(2)… t(n). I am using Matlab's import tool code below, and it gives me the time as a datetime vector, which does not work with my fourier transform function. Is there any way to convert datetime to a vector starting from zero in milliseconds? Thanks in advance!
close all
clear all
filename = 'myfile.txt';
delimiter = ',';
startRow = 2;
endRow = inf;
formatSpec = '%{yyyy-MM-dd HH:mm:ss.SSSSSSSSS}D%f%f%f%f%f%f%[^\n\r]';
fileID = fopen(filename,'r');
dataArray = textscan(fileID, formatSpec, endRow-startRow+1, 'Delimiter', delimiter, 'MultipleDelimsAsOne', true, 'EmptyValue' ,NaN,'HeaderLines', startRow-1, 'ReturnOnError', false);
fclose(fileID);
% Allocate imported array to column variable names
time = dataArray{:, 1};
Ua_hela = dataArray{:, 2};
Ub_hela = dataArray{:, 3};
Uc_hela = dataArray{:, 4};
Ia_hela = dataArray{:, 5};
Ib_hela = dataArray{:, 6};
Ic_hela = dataArray{:, 7};
clearvars filename delimiter startRow endRow formatSpec fileID dataArray ans;

Best Answer

For datetime objects,
ms = milliseconds(time - time(1));