999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

K—means算法在大學生消費狀況分析中的應用

2013-04-29 00:00:00賀玉珍任姚鵬
計算機時代 2013年2期

摘 要: 以運城學院在校大學生為例,對其消費情況進行了抽樣調查,并利用K-means算法對調查結果進行了聚類和分析。實驗結果表明,每一類學生中影響其消費的因素是有差別的,該分析結果可作為指導各類學生消費的依據。

關鍵詞: 數據挖掘; 聚類分析; K-means算法; 消費調查

中圖分類號:TP311 文獻標志碼:A 文章編號:1006-8228(2013)02-19-03

Application of K-means algorithm in the analysis of consumption status of undergraduates

He Yuzhen, Ren Yaopeng

(Department of Computer Science and technology, Yuncheng University, Yuncheng, Shanxi 044000, China)

Abstract: The consumption of undergraduate students in Yuncheng University is investigated in this paper, and the K-means algorithm is used in the survey to carry out clustering analysis. The results show that the factors affecting consumption in each cluster of students are different. The analysis result may serve as a basic guidance of all kinds of students' consumption.

Key words: data mining; clustering analysis; K-means algorithm

0 引言

正確引導大學生消費是高校素質教育不可忽視的一項重要內容。影響學生消費的因素很多,因此需要進行綜合分析,傳統分析大部分采用統計分析的手段,得到均值、方差等一些簡單的分析結果[1,2]。其實,還有一些潛在的因素,需要進一步分析,從而得出結論,為學生提供合理的消費意見與建議。許多信息無法從傳統的學生消費分析方法中獲得,而可以通過從20世紀90年代中期興起的數據挖掘技術獲得,進而找到影響學生消費的真實原因,制定相應措施,改善學生不合理的消費狀況。

數據挖掘(Data Mining),就是從大量的、不完全的、模糊的、有噪聲的、隨機的數據中,提取隱含在其中的人們事先不知的,但又是潛在有用的信息和知識的過程。而聚類分析(Clustering Analysis)是數據挖掘的一種技術,它的輸入是一組未標定的記錄,此時輸入的記錄還沒有被進行任何分類,其目的是根據一定的規則,合理劃分記錄集合,是研究“物以類聚”問題的一種多元統計方法。聚類分析實質是一種建立分類的方法,它能夠將一批樣本數據(或變量)按照它們在性質上的親疏程度在沒有先驗知識的情況下自動進行分類,有效克服了過去人們主要靠經驗和專業知識做定性分類而帶有的主觀性和任意性,特別是對于多因素、多指標的分類問題,定性分類更難以客觀準確分類。本文對學生的消費分類就采用了聚類分析中的K-means算法。

1 K-means算法簡介

1.1 K-means算法思想

K-means算法是J.B.MacQueen在1967年提出的,是聚類方法中一個基本的劃分方法,也是目前諸多聚類算法中極有影響的一種技術。K-均值算法以k為參數,把N個對象分為k個簇,以使簇內具有較高的相似度。相似度的計算根據一個簇中對象的平均值來進行[3]。

首先隨機地選擇K個對象,每個對象初始地代表了一個簇的平均值或中心。對剩余的每個對象根據其與各個簇中心的距離,將它賦給最近的簇。然后重新計算每個簇的平均值。這個過程不斷重復,直到準則函數收斂。

K-means算法的準則函數定義為:

E是數據文件中所有對象的平方誤差的總和。其中k是初始聚類中心個數,x是空間中的點,表示給定的數據對象,xi是簇Ci的平均值[4]。

1.2 K-means算法流程和操作步驟

K-means算法流程為:

⑴ 輸入:簇的數目k和包含n個數據文件。

⑵ 輸出:k個簇,使平方誤差準則最小。

操作步驟:

⑴ 為每個聚類確定一個初始聚類中心,這樣就有K個初始聚類中心。

⑵ 將樣本集中的樣本按最小距離原則分配到最鄰近聚類。

⑶ 使用每個聚類中的樣本均值作為新的聚類中心。

⑷ 重復步驟⑵、⑶直到聚類中心不再變化。

⑸ 結束,得到K個聚類[5,6]。

2 實施步驟

2.1 問卷的發放和統計

本次調查問卷共發放100份。發放時,以運城學院計算機系、生科系、化學系、物理系、經管系、音樂系、美術系等學生為主,所有問卷發放基本做到文科、理科、工科、藝術類兼備,男女生按1:1的比例。問卷數據結果保存在EXCEL文件中。

2.2 數據預處理

K-means算法只能處理數值型的屬性,遇到分類型的屬性時要把它變為若干個取值為0和1的屬性。因此對調查數據進行統計整理,得到矩陣X,它是一個100*9的矩陣,部分數據結果如下。

2.3 算法實現

K-means算法在Matlab中的主要實現代碼如下:

function [cid,nr,centers]=kmeans(V1,k,nc)

[n,d]=size(V1);

cid=zeros(1,n); % 設置cid為分類結果顯示矩陣

oldcid=ones(1,n);

nr=zeros(1,k);

maxgn=100;

iter=1;

while iter

for i=1:n %計算每個數據到聚類中心的距離

dist=sum((repmat(V1(i,:),k,1)-nc).^2,2);

[m,ind]=min(dist); %將當前聚類結果存入cid中

cid(i)=ind;

end

for i=1:k

%找到每一類的所有數據,計算它們的平均值,作為下次

計算的平均值

ind=find(cid==i);

nc(i,:)=mean(V1(ind,:));

%統計每一類的數據個數

nr(i)=length(ind);

end

iter=iter+1;

end

maxiter=2;

iter=1;

move=1;

while iter

move=0; %對所有的數據進行再次判斷,需求最佳聚類結果

for i=1:n

dist=sum((repmat(V1(i,:),k,1)-nc).^2,2);

r=cid(i); %將當前數據屬于的類給r

dadj=nr./(nr+1).*dist'; %計算調整后的距離

[m,ind]=min(dadj); %找到該數據距離哪個聚類中心最近

if ind~=r %如果不等則聚類中心移動

cid(i)=ind; %將新的聚類結果送給cid

ic=find(cid==ind); %重新計算調整當前類別的聚類中心

nc(ind,:)=mean(V1(ic,:));

move=1;

end

end

iter=iter+1;

end

centers=nc;

if move==0

disp('No points were moved after the initial

clustering procedure.')

else

disp('Some points were moved after the initial

clustering procedure.')

end

主函數如下(運行時調用上面函數即可):

k=4;

V1=x;

[n,d]=size(V1);

bn=round(n/k*rand); %第一個隨機數在前1/K的范圍內

nc=[V1(bn,:);V1(2*bn,:);V1(3*bn,:);V1(4*bn,:)] %初始聚類中心

[cid,nr,centers]=kmeans(V1,k,nc)

2.4 聚類結果

在程序中我們將數據結果聚為四類。聚為四類的學生所占比例,以及四類學生最終聚類結果如圖1所示。

圖1 最終聚類結果

100名學生各自歸屬的聚類中心如圖2所示。

圖2 各自歸屬聚類中心

3 聚類結果分析

根據上面聚類結果得到四類學生的各項消費狀況,如表1所示。

表1 聚類結果分類表

[類別\月生活費支出\吃飯

支出\聚會

支出\購物

支出\戀愛

支出\話費

支出\學習

支出\娛樂

支出\生活費節余\簇1\0.7357\0.2375\0.1143\0.2107\0.0464\0.0436\0.0789\0.0889\0.0214\簇2\0.7786\0.2464\0.1429\0.2786\0.0643\0.0471\0.0771\0.2643\0.0250\簇3\1.0350\0.2763\0.1588\0.2675\0.0838\0.0537\0.0843\0.1968\0.0338\簇4\1.4889\0.2944\0.1556\0.2944\0.0861\0.0522\0.0839\0.1844\0.0389\]

⑴ 簇1占總實例的28%,他們的消費總支出在700元左右,該簇中女生相對較多;根據該簇里面各消費支出狀況比較可以看出,吃飯支出和購物支出相對比較高。這部分學生的戀愛、話費支出、娛樂支出最低,基本上做到了在保證正常生活下不鋪張浪費,生活較節儉。

⑵ 簇2占總實例的14%,他們的消費總支出在800元左右,其中男生、女生比例相當;根據該簇里面各支出狀況比較可以看出,經常購買物品支出占據的份額最高,甚至超過基本的吃飯支出,說明這部分學生注重物質消費,而在這個消費領域女生支出遠遠大于男生,其次是娛樂支出,而在這個消費領域里面,男生又遠遠大于女生,他們在購物支出和娛樂支出方面的消費超過了基本的吃飯支出。

⑶ 簇3里占總實例的40%,他們的消費總支出在1000元左右,其中男生相對較多,女生較少。根據該簇中各支出狀況比較可以看出,這部分學生吃飯支出占總支出比例最高。另外他們在購物方面花費也比較高,他們注重品牌,追逐時尚。另外,他們的聚會支出也有增無減。

⑷ 簇4占總實例的18%,其中男生相對較多;他們的消費總支出在1500元左右,該簇中學生吃飯和購物支出相等,其次是娛樂和聚會支出,他們各方面的消費都非常高,另外他們的戀愛支出超過了學習支出。

4 結束語

本文利用K-means算法對大學生的消費狀況進行了分析,從分析結果中得到一些可以作為指導大學生理性消費依據的信息,達到了數據挖掘的效果。但對于K-means算法在該問題的應用還需進一步優化。

參考文獻:

[1] 肖輝贊.高校大學生消費誤區與思想政治教育的對策略論[J].社科縱橫,2009.4:162-163

[2] 于影.對加強大學生消費文化教育的思考[J].長春工業大學學報,2006.3:48-50

[3] 張建萍,劉希玉.基于聚類分析的K-means算法研究及應用[J].計算機應用研究,2007.5:166-168

[4] 傅振南.聚類分析技術在招生宣傳工作中的應用研究[J].福建教育學院學報,2009.2:113-115

[5] 徐勤鵬,楊志新,曾楊,黃志剛.聚類算法在設備故障診斷中的研究與應用[J].微計算機信息,2010.3:149-150

[6] 余嘉元.基于GA的K均值聚類分析在消費心理學中的應用[J].廣西師范大學學報,2009.3:88-89

主站蜘蛛池模板: 亚洲男人的天堂久久香蕉| 国产精品观看视频免费完整版| 人妻出轨无码中文一区二区| 少妇极品熟妇人妻专区视频| 在线观看免费人成视频色快速| 日韩在线1| 国产黄在线观看| 成人午夜网址| 在线高清亚洲精品二区| 亚洲成aⅴ人片在线影院八| 中文字幕第1页在线播| 免费一极毛片| 国产69囗曝护士吞精在线视频| 91久久偷偷做嫩草影院免费看| 国产一区免费在线观看| 欧美亚洲香蕉| 亚洲无码电影| 亚洲综合色婷婷| 国产一区二区三区免费观看| 狠狠色综合网| 久久中文电影| 在线欧美a| 伊人久久久久久久久久| 欧美精品不卡| 精品国产一区二区三区在线观看| 亚洲国产AV无码综合原创| 日韩av在线直播| 欧美日韩一区二区在线免费观看| 国产99热| 色妺妺在线视频喷水| 国产黑丝一区| 国产成人精品亚洲日本对白优播| yjizz视频最新网站在线| 国产1区2区在线观看| 在线国产91| 激情综合图区| 99视频在线看| 国产小视频a在线观看| 精品免费在线视频| 国产激爽爽爽大片在线观看| 欧美成人综合视频| 日韩在线永久免费播放| 国产丝袜无码精品| 香蕉eeww99国产在线观看| 亚洲成人网在线播放| 亚洲天堂精品视频| 无码福利日韩神码福利片| 啪啪免费视频一区二区| 国产精品香蕉在线| 欧美国产日韩一区二区三区精品影视| 亚洲天堂在线免费| AV熟女乱| 亚洲综合久久一本伊一区| 秋霞国产在线| www亚洲精品| 国产美女在线免费观看| 992Tv视频国产精品| 热九九精品| a天堂视频| 干中文字幕| 亚洲v日韩v欧美在线观看| 日本高清免费一本在线观看| 久久9966精品国产免费| 国产手机在线小视频免费观看| 亚洲成aⅴ人片在线影院八| 五月婷婷中文字幕| 亚洲成人免费在线| 91精品国产丝袜| 黄色网站在线观看无码| 免费一级无码在线网站| 色综合五月婷婷| 五月婷婷丁香综合| 手机在线看片不卡中文字幕| 国产91视频免费| 国产精品白浆在线播放| 97在线免费视频| 久久免费成人| 国产人妖视频一区在线观看| 日韩国产无码一区| 92精品国产自产在线观看 | 国产精品主播| 精品福利网|