rm(list = ls())
options(scipen =20)
data<-read.table("E:\\贷款余额\\信用贷款.txt",sep="\t",header=T)
library(lubridate)
library(plyr)
library(reshape)
library(data.table)
data101<-melt(data,id=c("owner_user_id","y","m","d","in_out_type"))
data101<-cast(data101,owner_user_id+y+m+d~in_out_type,sum)
data101$in_out<-data101[,5]-data101[,6]
data101<-data.table(data101)
data102<-data101[,cumsum(in_out),by=owner_user_id]
data103<-cbind(data101,data102)
data104<-as.data.frame(data103)
data104<-data104[,c(1:4,9)]
data104<-arrange(data104,owner_user_id,y,m,-d)
data104_min<-ddply(data104,.(owner_user_id),summarize,V1_min=min(V1))
data104_min$flag<-0
for(i in 1:nrow(data104_min)){
if(data104_min[i,2]>0){
data104_min[i,3]<-0
}else{data104_min[i,3]<-abs(round(data104_min[i,2],2))
}
}
data104_min<-data104_min[,c(1,3)]
data104<-merge(data104,data104_min)
data104$finally<-round(data104[,5]+data104[,6],2)
data105<-ddply(data104,.(owner_user_id,y,m),summarize,balance=head(finally,1))
data105_output<-write.table(data105,"E:\\贷款余额\\data105_balance.txt",row.names=F,sep="\t")
View(data105)