def post(self, request): """ serves http post request made by client. """ form = self.form(request.POST or None) method = request.POST.get('method', '') table = Loader.read_csv() if form.is_valid(): result = [table[0]] data = table[1:] if method == "1": myobject = MeanImputation(data) else: myobject = HotDeckImputation(data) data = myobject.main() for i in data: result.append(i) Loader.write_csv(result) return HttpResponseRedirect("/missing/") else: context = { 'form': form, 'error': 'Select one method before action!' } return render(request, self.template, context)
def post(self, request): request_post = dict(request.POST) table = Loader.read_csv() myobject = Binning(table) result = myobject.main(request_post) Loader.write_csv(result) context = {'success': 'Operation completed Successfully!'} return render(request, self.template, context)
def get(self, request): try: table = Loader.read_csv() heading = table[0] data = table[1:] return render(request, self.template, {"heading": heading, "data": data}) except: return render(request, self.template, {"alert": "no data exist to display"})
def download_csv(request): """ download the data in csv format """ response = HttpResponse(content_type='text/csv') response['Content-Disposition'] = "attachment; filename=data.csv" writer = csv.writer(response) table = Loader.read_csv() for i in table: writer.writerow(i) return response
def get(self, request): table = Loader.read_csv() for row in table: for item in row: if item in ('NULL', '*', '?'): message = "there are missing values in your data, fill them first." return render(request, self.template, {'message': message}) row_size = len(table[0]) fields = [] for i in range(1, row_size): try: float(table[1][i]) fields.append(table[0][i]) except: pass return render(request, self.template, {"fields": fields})
def get(self, request): """ serves http get request send by client. """ table = Loader.read_csv()[1:] # read file from media folder total_missings = self.__calculate_missings(table) if total_missings: context = { 'form': self.form, 'info': '"{}" values missing in your data'.format(total_missings) } else: context = { "form": self.form, 'message': "No missing values found in the data." } return render(request, self.template, context)
def post(self, request): table = Loader.read_csv() myobject = OneR(table) print(myobject.main()) context = {'message': myobject.main()} return render(request, self.template, context)
frequency_table = { 'Humidity': { 'Normal': [6, 1], 'High': [3, 4] }, 'Temperature': { 'Mild': [4, 2], 'Cool': [3, 1], 'Hot': [2, 2] }, 'Outlook': { 'Rainy': [3, 2], 'Overcast': [4, 0], 'Sunny': [2, 3] }, 'Windy': { 'TRUE': [3, 3], 'FALSE': [6, 2] } } table = Loader.read_csv() myobject = OneR(table) result = myobject.calculate_frequency_table() for k,v in result.items(): print(k,v)