两列数据的扩展匹配matlab处理
1. 数据格式如下
工作表含4列数据,分别是里程1、高程1、里程2和高程2。第1和3列,即里程1和里程2有重复。
2. 运行代码,结果如下。
其中第1列为里程1和里程2合并、去重后的排序结果。第2和3列为相对应的高程。
3. 部分源代码
clc,clear
data_in=xlsread('input.xlsx'); %读取excel数据。共四列,分别为里程1、高程1、里程2、高程2.
warndlg('数据读取完成!')
t_zong0=[data_in(:,1) ;data_in(:,3)]; %组建总的里程向量
t_zong1=sort(t_zong0); % 总里程排序(含重复项)
t_zong2=unique(t_zong1); %去重后的数据
n1=length(t_zong1)/2; % 原数据行数
n2=2*n1; % 原总里程向量行数
n3=length(t_zong2); %不重复的总里程向量行数,唯一总里程向量
data_out=[t_zong2 zeros(n3,1)*nan zeros(n3,1)*nan]; %构建矩阵,由唯一总里程向量,和两列空矩阵组成
**********
xlswrite('output.xlsx',data_out); %输出到excel
warndlg('数据匹配完成!')