




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
如何批量處理文本文件最近數(shù)據(jù)堂為了弄數(shù)據(jù)挖掘比賽提供了一批用戶行為日志數(shù)據(jù)。對于以前沒玩過的數(shù)據(jù),我是特別的好奇。處理這批文本文件確實花了不少時間。數(shù)據(jù)以不同的日期作文件夾分別存放,每個文件夾中又有近一千個文本文件,每個文件都是一個用戶的行為日志。為了分析這些數(shù)據(jù),首先需要將這兩萬個文本文件讀入R中,再用字符串函數(shù)進行處理成結(jié)構(gòu)化的數(shù)據(jù)。處理方法如下:library(stringr)setwd('D:\\kaggle\\tang\\data')data<-read.table('data.csv',T,sep=',')#讀入文檔地址path<-'D:\\kaggle\\tang\\data\\behavior'<-dir('D:\\kaggle\\tang\\data\\behavior')<-list()fre<-numeric()for(iin1:length())(doc.nam[[i]]<-dir(paste(path,[i],sep='\\'))fr[i]<-length([[i]])}dir<-rep(,fre)<-unlist()<-character()for(iin1:length(dir))(file.nam[i]<-paste(path,dir[i],[i],sep='\\')}#建立抽取主函數(shù),返回列表data.get<-function()(#獲取文本temp<-readLines(,encoding='UTF-8')if(length(temp)<=2)return(NA)#用戶編號id<-str_matc(,"[A-Z0-9]{32}")#調(diào)查日期day<-str_matc(,"\\d+■-\\d+■-\\d+")#開機時點clock<-str_sU(str_match(,'_\\d{2}-'),2,3)#切分轉(zhuǎn)換文本函數(shù)trans〈一function(x){res<unlist(str_split(x,"\\[=\\]|<=>"))#res<-str_extract(x,"L<=>]+\\.[a-z]+")return(res)}#將文本切開轉(zhuǎn)為列表result<-lapply(temp,trans)#開機時長opentime<-as.numeric(result[[1]][2])#先進行時間分析,由于有的信息不是按順序排列,所以要按時點重排#時點抽取time<-unlist(lapply(result[-c(1:2)],function(x)x[2]))time<-as.numeric(time)#時點排序,然后重排result列表new.res<-resul[-c(1:2)][order(time)]#返回用戶使用的程序向量prog<-unlist(lapply(new.res,function(x)x[4]))#各程序使用時間time<-unlist(lapply(new.res,function(x)x[2]))time<-as.numeric(time)time[length(time)+1]<-opentimetime<-diff(time)prog.time<-data.frame(prog=prog,time=time)progtime<-dcast(prog.time,prog~.,sum,value.var='time')names(progtime)<-c('program','time')#使用的軟件個數(shù)numofsoft<-nrow(progtime)#真實使用時長realtime<-sum(progtime$time,na.rm=T)return(list(id=as.character(id),day=as.character(day),clockas.numeric(clock),opentime=opentime,numofsoft=numofs,ftrealtime=realt,iprogtime=progtime))}所有的文件名都已經(jīng)存在變量中,用上面建立好的函數(shù)data.get來提取第一份文件中的信息>data.get([[1]])$id[1]"0143692D264FD906F10B8ECAB0F139D1”$day[1]"2012-05-07"$clock[1]12$opentime[1]7771$numofsoft[1]9$realtime[1]7610$progtimeprogratime360chrome.exe1237360leakfixer.exe3
3360Safe.exe124360sd.exe205explorer.exe5106iexplore.exe54737liveupdate.exe68popup_QQ.exe449QQ.exe305通過電子郵件發(fā)送BlogThis!共享給Twitter共享給Facebook標(biāo)簽:數(shù)據(jù)預(yù)處理7條評論:TracySu11/26/201211:19下午好文!
AmeenZhao12/05/201212:45上午如果只是讀取txt文件,能否用read.table一次性引入R?比如:路徑是c:/RCODE,文件是file1.txtfile2.txt, ,file100.txt.回復(fù)寫長城的詩12/05/20128:33上午應(yīng)該要寫一個循環(huán)吧
匿名12/07/20122:17下午像這種大量卻簡單的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度裝配生產(chǎn)線升級終止合同書
- 二零二五年度旅行社導(dǎo)游旅游產(chǎn)品推廣合同
- 人力資源管理培訓(xùn)體系構(gòu)建指南
- 小王子經(jīng)典解讀
- 關(guān)于辦公室設(shè)備維護的通知申請
- 高效事務(wù)處理手冊與操作指南
- 食品安全追溯系統(tǒng)合作協(xié)議
- 影視行業(yè)影視作品發(fā)行權(quán)轉(zhuǎn)讓協(xié)議
- 公司債券受托管理合同
- 計算機網(wǎng)絡(luò)安全風(fēng)險防御練習(xí)題
- 康復(fù)科護士的康復(fù)護理計劃的個性化制定
- 2022年南京鐵道職業(yè)技術(shù)學(xué)院單招職業(yè)技能題庫及答案解析
- 項目一-旅游概述-(旅游概論課件完美版)
- 10G409預(yù)應(yīng)力管樁圖集
- 《電視節(jié)目制作》課件
- 挖掘機司機培訓(xùn)服務(wù)投標(biāo)方案(技術(shù)標(biāo) )
- 小學(xué)生主題班會 愛國主義教育 課件(共35張PPT)
- 雇傭保姆免責(zé)協(xié)議7篇(通用)
- 水電站水輪機調(diào)速器及其附屬設(shè)備安裝施工技術(shù)方案
- XX大學(xué)學(xué)科競賽項目申請書
- 03S702鋼筋混凝土化糞池圖集
評論
0/150
提交評論