0
私はあなたから各項目を呼び出すには、それぞれの年の私が年によって分割し、電車やテストで作成した大きなデータベースリストに関数を適用し、出力結果
#split the dataset into a list of datasets
Y <- split(dat_all, dat_all$year)
#create a train and test dataset for all years
#takes Y is inp
create_sets <- function(x){
train_set <- sample(2, nrow(x), replace = TRUE, prob = c(0.7, 0.3))
train <- x[train_set == 1, ]
test <- x[train_set == 2, ]
assign('x', list(train = train, test = test))
}
Ylist <- lapply(Y, create_sets)
を持っていますYlist $ '2016'を使用する$
私は各リストを個別に実行できる正確度関数を作ったが、膨大な量のコードを保存するためにすべてを1つにする方法を探しているデータの年数)
以下は、現在1年間の精度比の作成方法です
val_train<-Ylist$'2016'$train
val_train$pred<-predict(modf,newdata=Ylist$'2016'$train)
val_train$probs<-exp(val_train$pred)/(1+exp(val_train$pred))
x<-data.frame(rcorr.cens(val_train$probs, val_train$default_flag))
train_AR<-x[2,1]
train_AR
modfull <-ModFit(test)
val_test<-test
val_test$pred<-predict(modf,newdata=test)
val_test$probs<-exp(val_test$pred)/(1+exp(val_test$pred))
x<-data.frame(rcorr.cens(val_test$probs, val_test$default_flag))
test_AR<-x[2,1]
test_AR
AR_Logistic1<-c(train_AR,test_AR,)
AR_Logistic2<-c(train_AR,test_AR) #just in to see if table works
AccuracyRatio<-rbind(AR_Logistic1,AR_Logistic2)
colnames(AccuracyRatio)<-c("Train","Test","All")
AccuracyRatio
ちょうど私が私の精度比を通じて私の全体のリストを実行しようとした後、その電車やテストのために各年の出力ARてる明確にします。
すべてのヘルプは大lapply
で
こんにちは、このすべては、私が正しいとしてそれをマークした正常に動作します。しかし、少し質問があります。表では、xを使用して各年の名前が呼び出されます。これは、 "2008 rcorr.cens.val_train_test.probs..val_train_test.default_flag"を出力します。ちょうどその年を持つ方法はありますか? – user2902494
もう1つは、その後、私はやった。私はまた、1年を通して設定された精度比、例えばtest + trainを実行しようとしています。 trainDat < - yearDat $ traintestDat < - yearDat $ testtrainDat_testDat <-yearDat でこれを追加しようとしましたが、別のセクションでtrainDat_testDatを追加しましたが、成功しませんでした。どのように私はこれを行うことができるかに関する任意のアイデア?あなたの助けは本当に感謝しています! – user2902494
私はそれが正しいとマークしていることを知っていますが、私は本当にいくつかの特別な助けに感謝するでしょう – user2902494