2017-12-14 211 views
5

Aşağıdaki kodu olarak, bir güçlendirici kullanılarak sink fonksiyonun günlüğünü kurtarmaya çalışıyorum: Lavaboyu nasıl kullanabilirim ve hala R'de yazdırılmış mesajlar alabilir miyim?

require(xgboost) 
require(R.utils) 

data(iris) 
train.model <- model.matrix(Sepal.Length~., iris) 

dtrain <- xgb.DMatrix(data=train.model, label=iris$Sepal.Length) 

xgb_grid = list(eta = 0.05, max_depth = 5, subsample = 0.7, gamma = 0.3, 
    min_child_weight = 1) 

sink("evaluationLog.txt") 
fit_boost <-xgb.cv(data = dtrain, 
        nrounds  = 1000, 
        objective = "reg:linear", 
        eval_metric = "logloss", 
        params = xgb_grid, 
        colsample_bytree = 0.7, 
        early_stopping_rounds = 100, 
        nfold = 5, 
        prediction = TRUE, 
        maximize = FALSE 
       ) 

sink() 

Ancak bunu işlevin çıkışını ve/veya mesajı yazdırmadan değil çünkü "Ne oluyor" göremez.

Sorum ben sink ile .txt dosyayı hem almak ve işlevi (bu durumda xgb.cv olacaktır) görmek yazdırıyor can nasıl?

Teşekkür ederiz!

cevap

6

Kullanım argüman split:

sink('test.txt', split = TRUE) 
print(letters) 
# [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" 
#[18] "r" "s" "t" "u" "v" "w" "x" "y" "z" 
sink() 

hem konsolda yazdırılır üstünde görebilir ve ayrıca geçerli dizinde bir test.txt dosyayı göreceğiniz üzere.

+0

Çok açık! Ve mükemmel. Teşekkür ederim!!! – patL

+1

Rica ederim, yardımcı olabilirim :) – LyzandeR