Need to Split a column of type 'string' in a Table in to group of 4 characters giving new names to the result.
12 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
manoj hanu
el 11 de Ag. de 2019
Comentada: manoj hanu
el 15 de Ag. de 2019
I have read a csv file in to a table in below format of large number of rows. The Data field is of type string.
Time Identifier Data
00:06:40.23 "300" "65 00 69 00 6D 00 75 00 "
00:06:40.25 "100" "B7 FF E5 FF 7D 10 01 00 "
I need to split the Data column in to 4 columns with new names. i.e. as below
Time Identifier AC1 AC2 AC3 AC4
00:06:40.23 "300" "6500" "6900" "6D00" "7500"
00:06:40.25 "100" "B7FF" "E5FF" "7D10" "0100"
Respuesta aceptada
Bruno Luong
el 11 de Ag. de 2019
Editada: Bruno Luong
el 11 de Ag. de 2019
s=[ "65 00 69 00 6D 00 75 00 ";
"B7 FF E5 FF 7D 10 01 00 "]
c = char(s);
c(:,3:3:end)=[];
ssplit = string(mat2cell(c,ones(1,size(c,1)),4*ones(1,4)))
Result
ssplit =
2×4 string array
"6500" "6900" "6D00" "7500"
"B7FF" "E5FF" "7D10" "0100"
Más respuestas (1)
madhan ravi
el 11 de Ag. de 2019
v=regexp(strrep(T.Data,' ',''),'\w{4}','match');% naming a table with a variable name table is a terrible idea (will hinder the in-built function table())use T for example
AC = vertcat(v{:});
AC = array2table(AC);
T.Data = [];
T = [T,AC]
Ver también
Categorías
Más información sobre Cell Arrays en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!