In Excel divide the single column into three columns
    2 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Hi...In an Excel table, I want to divide the single column into three columns containing data from the first column,Select from A3 the three columns Tide Amplitude Phase
buffer=fileread('RasTanura 1980 AllYear._AnalysisLog.txt');
data= textscan(buffer, '%s %*f %f %f %f %f %f %f','delimiter','#');  
data= [data{1},num2cell([data{2:end}])];
xlswrite('RasTanura 1980 AllYear.xlsx',data);

2 件のコメント
  dpb
      
      
 2017 年 12 月 23 日
				Attach a short section of the original input file -- looks like should be able to just read it directly if you skip the three header lines. If you want to keep the three data values shown above, I don't understand why you would have written the format string you did???
採用された回答
  Walter Roberson
      
      
 2017 年 12 月 24 日
         [~, txt] = xlsread('file1.xls');
 TAP_cell = regexp(txt(4:29), '(?<Tide>\S+)\s+(?<Amplitude>\S+)\s+(?<Phase>\S+)', 'names', 'once');
 TAP = vertcat(TAP_cell{:});
 Tides = {TAP.Tide};
 Amplitudes = str2double({TAP.Amplitude});
 Phases = str2double({TAP.Phase});
 JOPR_cells = regexp(txt(35:end), '\s+', 'split');
 JOPR_cell = vertcat(JOPR_cells{:});
 JOPR = str2double(JOPR_cell);
 JDay_LSTs = JOPR(:,1);
 Observeds = JOPR(:,2);
 Predicteds = JOPR(:,3);
 Residuals = JOPR(:,4);
6 件のコメント
  Walter Roberson
      
      
 2017 年 12 月 25 日
				Remove the
   Tides=(cellfun(@str2double, Tides)) ;
and use
T1 = cell2table( [Tides(:), num2cell(Amplitudes(:)), num2cell(Phases(:))], 'VariableNames', {'Tide', 'Amplitude', 'Phase'});
The problem is in trying to convert the Tide to numeric, since it is text.
その他の回答 (0 件)
参考
カテゴリ
				Help Center および File Exchange で Large Files and Big Data についてさらに検索
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


