標籤:大資料 matlab 視覺化檢視 python hadoop
一:起因
(1)最近一直在處理大資料,從MB ----> GB的變化,是一次質的飛躍,相應的工具也在變 從widows到linux,從單機單核 到 hadoop多節點的計算
(2)問題來了,面對海量的資料,如何從中挖掘實用的資訊或者發現潛在的現象,視覺化檢視可能是必不可少的 ;
(3)視覺化檢視可以說百度一大篇,可是作為研究者的我們,程式猿的我們可能更希望能夠抽象出一種數學模型,對現實的現象進行非常好的描述和刻畫
(4)Python(資料清洗和處理) + MATLAB(模型分析) 或 c++/java/hadoop(資料清洗和處理) + MATLAB(模型分析)
(5)先前的一篇博文可以參考 c++ fstream + string 處理大資料
二:MATLAB 學習
(1)伽馬分布(gamfit)
clcclear allclose alldataall = load('G:\zyp_thanks\metro_test\1-07\529_2.csv');data = dataall(:,3);%指定列[y,x]=hist(data,6);%creates a histogram bar plot of data,sorts data into the number of bins specified by nbins%return the categorical levels correponding to each count in Nsubplot(2,2,1)bar(x,y,'FaceColor','r','EdgeColor','w');box offcxd1=gamfit(data);% returns the maximum likehood estimates(MLEs) for the parameters of the gamma distribution given the data in vector data.% 伽瑪分布中的參數α,稱為形狀參數,β稱為尺度參數。a = cxd1(1);b = cxd1(2);cxd2=gamcdf(data,cxd1(1),cxd1(2));%return the gamma cdf(分布函數) at each of the values in x using the corresponding shape parameters a and scale parameter%cxd2 = gampdf(data,cxd1(1),cxd1(2));%%return the gamma pdf(密度函數) at each of the values in x using the corresponding shape parameters a and scale parameterH=kstest(data,[data,cxd2]);subplot(2,2,2);plot(data,cxd2);
(2)MATALAB 下 .m 檔案的命名
% 錯誤提示:
%Attempt to execute SCRIPT *** as a function 在運行MATLAB程式的時候,出現如題的報錯。
% 原因:
% 在系統中,現有的.m檔案有的與***函數重名,所以matlab編譯器不知道在遇到***的時候到底該執行哪一個函數。
% 例如:我編寫了一個.m檔案,命名為:fft2.m.用於實現通過頻域分析提取映像的紋理特徵。
% 當命令執行到X=fft2(ImageM)這句話的時候,不知道fft2是指系統函數還是自訂的紋理特徵提取函數。
% 解決:
% 把自訂的函數名改成其他名字。如上例中的fft2改為ffttexture.m?
(3)pdf 和 cdf函數的說明、
Probability density function(PDF) 機率密度函數;
cumulative distribution function ; CDF 是累積分布函數
(4)常態分佈(normpdf normcdf)
clcclear allclose alldataall = load('G:\zyp_thanks\metro_test\1-07\529_2.csv');data = dataall(:,3);%指定列[mu,sigma]=normfit(data);%estimate of the mean and standard deviation in data[y,x]=hist(data,6);%creates a histogram bar plot of data,sorts data into the number of bins specified by nbins%return the categorical levels correponding to each count in Nbar(x,y,'FaceColor','r','EdgeColor','w');box offxlim([mu-3*sigma,mu+3*sigma]) % sets the axis limits in the current axes to the specified valuesa2=axes;% computes the pdf at each of the values in X using the normal distribution% with mean and standard deviation sigma.ezplot(@(x)normpdf(x,mu,sigma),[mu-3*sigma,mu+3*sigma])set(a2,'box','off','yaxislocation','right','color','none')title '頻數長條圖與常態分佈密度函數(擬合)'
(5) quantile - quantile plot (Q-Q plot)
clcclear allclose alldataall = load('G:\zyp_thanks\metro_test\1-07\529_2.csv');data = dataall(:,3);%指定列qqplot(data);% displays a quantile-quantile plot of the sample quantiles of X versus% theoretical from a normal distribution. if the distribution of X is% normal,the plot will be close to linear.
大資料處理之道 (MATLAB 篇)