Bonjour,
je dois faire des extractions de valeurs d'un fichier (cf pièce jointe) pour en faire ensuite des calculs.
dans mon cas je dois extraire toutes les valeurs de diamètre et de température pour la position 0, puis 0.5 ... (ces valeurs ne sont pas figées, elle varient suivant ce que je mesure) à chacune des rotations (ici la liste de valeurs de rotation est a priori figée).
ensuite je dois convertir les valeurs de daimètres de 20°C à la température T du fichier suivant un coefficient de dilatation et enfin, pour toutes les positions 0 existantes, je dois faire la moyenne des valeurs de diamètres... Suis-je claire ou c'est du charabia

Test.txt

j'ai commencé par extraire de mon fichier les différentes listes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Extraction du fichier .csv et mise en forme de la liste
 
def extractioncsv(fichiercsv):
    Rotationcsv = []  # Extraction des valeurs de la protation
    Positioncsv = []  # Extraction des valeurs de la position des diamètres
    VALmincsv = []  # Extraction des valeurs du diamètre min
    VALmaxcsv = [] # Extraction des valeurs du diamètre max
    VALmediancsv = [] # Extraction des valeurs du diamètre médian
    Tcsv = []  # Extraction des valeurs de la température de la mesure du diamètre
 
    with open(fichiercsv, 'rb') as fcsv:
        lecteur = csv.reader(fcsv, delimiter=';')
        for ligne in lecteur:
            Rotationcsv.append(ligne[0])
            Positioncsv.append(ligne[1])
            VALmincsv.append(ligne[2])
            VALmaxcsv.append(ligne[3])
            VALmediancsv.append(ligne[4])
            Tcsv.append(ligne[5])
        del Rotationcsv[0:1], Positioncsv[0:1], VALmediancsv[0:1], Tcsv[0:1]
 
    return Rotationcsv, Positioncsv, VALmincsv, VALmediancsv, VALmaxcsvv, Tcsv
je ne mets pas le code intermédiaire

et de là je me dis que je dois créer une nouvelle liste genre bataille navale :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
for nz in range(0,len(VALmediancsv)) :
    NewDiam = VALmediancsv[nz]*(1+CoefDilatation*(Tcsv[nz]-20)] #conversion du diamètre à la température T
et là je bloque...comment je peux lui dire que pour toutes les valeurs de position identique, je dois extraire les valeurs de NewDiam et en faire la moyenne.

Vous m'avez comprise, je sais faire un calcul de moyenne... mais je ne sais pas extraire les valeurs

je vous remercie pour votre aide.

Cdlt

Patricia