Использование R - Recommenderlab и не может получить результаты в кадре данных для Microsoft SQL Server - PullRequest
0 голосов
/ 20 мая 2018

Это мой первый пост здесь.Я очень новичок, когда дело доходит до R, поэтому, пожалуйста, имейте это в виду.Я создаю систему рекомендаций (Фильтрация на основе пользовательского контента) с использованием библиотеки Recommenderlab из CRAN.

Я пытаюсь использовать sp_execute_external_script с SQL Server 2016, но не могу получить результаты в кадре данных(требуется хранимой процедурой) для возврата результатов.

Все работает до этой точки.Я пробовал as.matrix, as.data.frame, используя различные методы.

Вот мой код:

EXEC sp_execute_external_script
  @language =N'R',
  @input_data_1 =N'select * from matrix_table',
  @input_data_1_name = N'rentaldata',
  @output_data_1_name = N'Sales',
  @script=N'library(recommenderlab);

  rentaldata2 <- as.data.frame(rentaldata);

  rentaldata2 <- rxImport(rentaldata2);

  rentaldata2$enduser <- factor(rentaldata2$enduser);

  Sales_Interim <- as(rentaldata2, "realRatingMatrix"); 

  as(Sales_Interim, "list")

  makemeUBCF <- Recommender(Sales_Interim[1:75], method = "UBCF")

  #give me top 5 recommendations for two users that were not part of 
  training set          
  recomUBCF <- predict(makemeUBCF, Sales_Interim[76:77], type="ratings", n=5)

  Sales <- as.data.frame(recomUBCF)
  '

Может кто-нибудь помочь?

Iя пытался использовать as.data.frame (), as.matrix (), записывать в файл вместо этого используя write.table, lapply, writeLines ....

Спасибо!

1 Ответ

0 голосов
/ 01 июня 2018

Я пробовал на своем сервере, и для меня работает следующее:

Sales <- data.frame(as(recomUBCF,"matrix"))

Так как RecomUBCF должен быть realRatingMatrix, он должен работать.

Надеюсь, это поможет, ура,Arnaud

...