测井数据的聚类算法分段分层及图例

%在智能钻井研究工作中,对测井等各种随深度变化的数据进行聚类分析,是十分有用的一个数据处理方法。

%处理的数据主要是测井数据

% nepu liw   2017年9月3日

clc;clear;

Logdata=importdata('z_ho30.txt','\t'); %读入数据

[col,~]=size(Logdata); %获取行列

Logdata1=Logdata;

maxclust=4; %最大分类

row=4; %确定行数

Deep=Logdata1(:,1);

Logdata(:,row)=smooth(Logdata(:,row),10,'loess'); %对选定数据列进行平滑处理

 

H=clusterdata(Logdata(:,row),'linkage','average','maxclust',maxclust);  %对数据聚类

for ii=1:maxclust

    % disp(Logdata(H==1,2));

    row_mean=mean(Logdata1(H==ii,row));   %选择某一类进行平均处理       

    Logdata1(H==ii,row)=row_mean;  %平均值赋值相应位置

   % disp(['Den_mean=',Den_mean]);   

end

% disp(Logdata1(H==1,row));

plot(Deep,Logdata(:,row),'k','linewidth',1.5);hold on;

plot(Deep,Logdata1(:,row),'b','linewidth',2);

计算图例:

测井数据的聚类算法分段分层及图例

 作者:LiW