private (IDataView training, IDataView test) LoadData(MLContext mlContext) { var r = new Random(); var testData = _rateRepository.GetAll().Where(t => t.UserId == "100026" || t.UserId == "283788" || t.UserId == "163112").Select(s => new RecipeModel { UserId = int.Parse(s.UserId), RecipeId = s.RecipeId, Rating = s.Rate }).OrderBy(t => r.Next()).ToList(); var r2 = new Random(); var trainingData = _rateRepository.GetAll().Where(t => t.UserId != "1000026" || t.UserId != "283788" || t.UserId != "163112").Select(s => new RecipeModel { UserId = int.Parse(s.UserId), RecipeId = s.RecipeId, Rating = s.Rate }).OrderBy(t => r2.Next()).ToList(); IDataView trainingDataView = mlContext.Data.LoadFromEnumerable(trainingData); IDataView testDataView = mlContext.Data.LoadFromEnumerable(testData); var preview = ToDataTable(trainingDataView); return(trainingDataView, testDataView); }
public TableData GetTopRated(int count) { var topRated = _rateRepository.GetAll().GroupBy(t => new { t.RecipeId }).Select(group => new TopRated { RecipeId = group.Key.RecipeId, Count = group.Count() }).OrderByDescending(t => t.Count).ToList().Take(count); foreach (var topRecipe in topRated) { topRecipe.Recipe = _recipeRepository.GetRecipeById(topRecipe.RecipeId); } return(new TableData { DataSets = new List <TableDataSet> { new TableDataSet { Labels = topRated.Select(t => t.Recipe.Name).ToList(), Data = topRated.Select(t => t.Count).ToList() } }, Title = $"Top Ratings {DateTime.Now.Year}" }); }
public IEnumerable <Rate> GetAll() { List <Rate> ListRate = new List <Rate>(); foreach (Rate RateOne in _repository.GetAll()) { Rate NewRate = new Rate(); NewRate = RateOne; NewRate.User = null; NewRate.Product = null; ListRate.Add(NewRate); } return(ListRate); }
public async Task<IList<Rate>> GetAllAsync(string endPoint) { IList<Rate> rates = null; try { using(var httpClient = new HttpClient()) { var response = await httpClient.GetAsync(endPoint); response.EnsureSuccessStatusCode(); var content = await response.Content.ReadAsStringAsync(); var ratesJson = JsonConvert.DeserializeObject<List<RateJson>>(content); await _rateRepository.RemoveAllAsync(); await _rateRepository.UnitOfWork.Complete(); rates = ratesJson.Select(rate => new Rate() { From = rate.From, To = rate.To, ConversionRate = rate.Rate }).ToList(); await _rateRepository.InsertAllAsync(rates); await _rateRepository.UnitOfWork.Complete(); } } catch (Exception ex) { _logger.LogError(ex, ex.Message); } finally { rates = _rateRepository.GetAll().ToList(); } return rates; }