__author__ = 'ykogan' import ReadMongoDB import ReadCustomerUploads import re existing_models = ReadMongoDB.read_mongodb_server_models() #for existing_model in existing_models: # print(existing_model) uploaded_models = ReadCustomerUploads.read_server_models() matching_models = dict() for uploaded_model in uploaded_models: umodel_name = str(uploaded_model).upper() umodel_words = [x for x in re.split('\W+', umodel_name) if x != ''] for existing_model in existing_models: emodel_name = str(existing_model).upper() emodel_words = [x for x in re.split('\W+', emodel_name) if x != ''] model_match = list(set(umodel_words) & set(emodel_words)) if len(model_match) == len(umodel_words): matching_models["_".join(sorted(umodel_words))] = 'Exists' break elif len(model_match) > 0: if ("_".join(sorted(umodel_words)) in matching_models): temp_set = re.split("\W+", str(matching_models["_".join(sorted(umodel_words))])) if (len(temp_set) >= len(matching_models)): continue matching_models["_".join(sorted(umodel_words))] = "Partial match (" + "_".join(sorted(model_match)) + ")"
__author__ = 'ykogan' import ReadMongoDB import re import numpy as np import pandas as pd import numexpr import ReadCustomerUploads import ListServerModels #existing_models = MongoDB.read_mongodb_server_models() existing_models = ReadCustomerUploads.read_server_models() known_series = ListServerModels.getKnownSeries() known_models = ListServerModels.getKnownModels() known_generations = ListServerModels.getKnownGenerations() words_to_skip = ListServerModels.getWordsToSkip() all_words = dict() rev_all_words = dict() w2w = np.zeros([2000,2000]) df = pd.DataFrame(columns=("Series", "Model", "Generation", "SKU", "Description")) for existing_model in existing_models: emodel_name = str(existing_model).upper() emodel_words = [x for x in re.split('\W+', emodel_name) if x != ''] for word in emodel_words: