static void Main(string[] args) { Consult c = new Consult(); Console.WriteLine("Initial clients {0}", c.context.Clients.Count()); Console.WriteLine("Initial Transactions {0}", c.context.Transactions.Count()); Console.WriteLine("Initial Items {0}", c.context.Items.Count()); c.Clustering(0.1); Console.WriteLine("-------------"); c.clusterResult.ForEach(i => Console.WriteLine(i.ElementAt(0).Count())); //c.FrequentItemsets_Apriori(0.01); //c.GenerateRules(0.05); //c.itemSetsFrecuentesByClient("CN0001", 0.5).ForEach(e => Console.WriteLine(e)); //c.itemsbyClient("CN0012").ForEach(e => Console.WriteLine(e)); //c.getDependence(23, 0.005).ForEach(e => Console.WriteLine(e)); //var x = c.Frequent_Items_ByMonth(1).ToList(); //var x = c.FrequentItems_by_Department("NARIÑO").ToList(); //var x = c.FrequentItems_by_ClientType("CLINICAS PRIVADAS").ToList(); //foreach (String[] a in x) //{ // Console.WriteLine(a[0] + " " + a[1]); //} //var x = c.Purchase_prediction_from_Clustering("23",0.95); //foreach (String a in x) //{ // Console.WriteLine(a); //} //var x = c.Purchase_prediction_from_Clustering("23", 0.7); //foreach (String a in x) //{ // Console.WriteLine(a); //} //c.GenerateRules(Double.Parse("3") / 100); //var x = c.ItemsByMonth(2).Where(n => c.Rules.ContainsKey(n)); //var y= c.Items_without_sales(x.ToList()); Console.WriteLine("END"); Console.ReadLine(); }
static void Main(string[] args) { TimeSpan stop1; TimeSpan start1 = new TimeSpan(DateTime.Now.Ticks); Consult c = new Consult(); stop1 = new TimeSpan(DateTime.Now.Ticks); Console.WriteLine("Time loading: " + stop1.Subtract(start1).TotalSeconds + " segundos"); Console.WriteLine("Number of items: {0}, Number of transactions: {1}, Number of clients: {2}", c.context.Items.Count, c.context.Transactions.Count, c.context.Clients.Count); //Hashtable filter = c.context.RegionsFilteredPerMonth(3); //Console.WriteLine(filter.Count); //List<string> dpts = new List<string>(); //foreach (var v in filter.Keys) //{ // dpts.Add(v + ""); //} //foreach (string d in dpts) //{ // Console.WriteLine(d + " " + filter[d]); //} //Hashtable filter = c.context.ItemsFilteredPerMonth(3); //Console.WriteLine(filter.Count); //List<int> items = new List<int>(); //foreach (int v in filter.Keys) //{ // items.Add(v); //} //foreach (int d in items) //{ // Console.WriteLine("Item code: " + d + " Number of appearences: " + filter[d]); //} //Hashtable filter = c.context.ItemsFilteredByRegionAndCity("VALLE DEL CAUCA","CALI"); //Console.WriteLine(filter.Count); //List<int> items = new List<int>(); //foreach (int v in filter.Keys) //{ // items.Add(v); //} //foreach (int d in items) //{ // Console.WriteLine("Item code: " + d + " Number of appearences: " + filter[d]); //} //List < Client > filter = c.context.ClientsFilteredByRegionAndCity("VALLE DEL CAUCA", "CALI"); //foreach(Client cl in filter) //{ // Console.WriteLine(cl.Code); //} //TimeSpan stop; //TimeSpan start = new TimeSpan(DateTime.Now.Ticks); //c.context.generateFrecuentItemsets(0.005, "VALLE DEL CAUCA"); //stop = new TimeSpan(DateTime.Now.Ticks); //Console.WriteLine("Time generating frecuent itemsets: "+stop.Subtract(start).TotalSeconds+" segundos"); //TimeSpan stop2; //TimeSpan start2 = new TimeSpan(DateTime.Now.Ticks); //int n = 2; //List<Itemset[]> clusters = c.context.GenerateClustersWithinItemsets(n); //stop2 = new TimeSpan(DateTime.Now.Ticks); //Console.WriteLine("Time building {0} clusters "+stop2.Subtract(start2).TotalMilliseconds+ " milisegundos",n); //for(int i = 0; i < clusters.Count; i++) //{ // Console.WriteLine("Cluster number {0}", i + 1); // Itemset[] actual = clusters.ElementAt(i); // foreach(Itemset its in actual) // { // string linea = ""; // foreach(Item item in its.Items) // { // linea += item.Code + " "; // } // Console.WriteLine("Items: "+linea); // Console.WriteLine("Avg Classification: "+its.AverageClassification + " Avg Price " + its.AveragePrice); // } //} //Console.WriteLine("AFTER PRUNNING Number of items: {0}, Number of transactions in region: {1}, Number of clients: {2}", c.context.Items.Count, c.context.TransactionsPrunned.Where(i => c.context.Clients[i.Value.ClientCode].Departament.Equals("VALLE DEL CAUCA")).ToList().Count, c.context.ClientPrunned.Count); //Console.WriteLine("Number of frecuent itemsets: " + c.context.FrecuentItemsets.Count); Console.ReadLine(); }