Exemplo n.º 1
0
def parseExcel(xlsfile, idcampagne):

    # Dictionnaire des criteres ( prix, qualitée etc ... )
    # Dictionnaire des alternatives (Produit1 Produit2 Produit3)
    df = ExcelFile(xlsfile).parse(ExcelFile(xlsfile).sheet_names[0])
    alternatives = [row[0] for row in df.iterrows()]

    #Nous faisons venir la fonction Getimage.imageDansExcel qui nous renvois un tableau d'Image.
    #Celles-ci seront placés dans le tableau. En effet, Pandas ne récupere pas les images dans un classeur Excel :
    # Nous devons aller les chercher par nos propres moyens

    return Table(df.columns, alternatives, df,
                 GetImage.imageDansExcel(xlsfile, idcampagne))


#### FIN FONCTION ###############################################################################################################################################

##### TEST ######################################################################################################################################################

#Test des fonctions et classes de creation de tableau avec un fichier Excel quelquonque :

#parseExcel('CSVExemples/ExempleExcel-copie.xlsx',66)
         1 |     | Paws | Ribs | Size | Aquatic
         __|_____|______|______|______|________
         2 | Dog |  4   |  26  |  4   |   0
           |     |      |      |      |  

         output = {Dog: [4, 26, 4, 0]} 
"""

log_list.extend(
    "\n===========================\n --- COMMENCING STEP 1\n===========================\n"
)

current_path = path.realpath(__file__)[:-11]
sheet = ExcelFile(f"{current_path}ptg_input.xlsx").parse("Sheet1")
unprocessed_data = dict()
for row in sheet.iterrows():
    index, data = row
    unprocessed_data.update({index: data.tolist()})

log_list.extend(
    f" - Unprocessed Data Dict: {len(list(unprocessed_data.keys()))}\n")
log_list.extend("\n ~~~ Step 1 Completed! ~~~\n")

log_list.extend(
    "\n===========================\n --- COMMENCING STEP 2\n===========================\n"
)


def average_values(to_average_1, to_average_2):
    """
    Description: Averages 2 value lists and returns 1 list.