Bonjour Chers développeurs, j'ai vraiment besoin de votre aide.
mon dataframe se présente ainsi
J.J. 1945 1946 1947 1948 Debut Fin 1 0 0 0 0 80 199 2 0 0 0 0 70 201 3 0 0 0 0 54 213 4 0 0 0 0 95 203 5 0 0 0 0 59 216 6 0 0 0 0 52 201 7 0 0 0 0 50 214 8 0 0 0 0 76 211 9 0 10 0 0 76 208 10 0 4,4 0 0 47 214 11 0 0 0 0 61 218 12 0 0 0 0 61 204 13 0 0 0 0 64 225 14 0 0 0 0 81 186 15 0 0 19,7 0 75 215 16 0 0 0 0 41 192 17 0 0 0 0 84 225 18 0 4,1 0,1 0 56 212 19 0 0 0 0 50 272 20 7 0 0 0 58 196
j'ai écrit un code en python, qui fait la somme à partir du numéro d'un index à un autre numéro du même index(ces numéros sont dans deux colonnes que j'ai nommé début et fin):
L'excercie difficile c'est de faire une boucle pour les éléments sur les éléments de la colonne "debut" et "fin" (parce que ce que je veux c'est qu'il me fasse la somme des index du 80 eme jour au 199 eme jour pour l'année 1945 par exemple et ainsi de suite, les éléments de la colonne de "début" constitue le l'initial et le dernier élément se trouve dans la colonne équivalente de "fin")
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
23
24
25
26
27
28
29
30
31
32
33
34
35
36 df3=pd.read_excel("culte.xlsx") cum_1945 = df3[80:199]["1945"].sum() cum_1946 = df3[70:201]["1946"].sum() cum_1947 = df3[54:213]["1947"].sum() cum_1948 = df3[95:203]["1948"].sum() cum_1949 = df3[59:216]["1949"].sum() cum_1950 = df3[52:201]["1950"].sum() cum_1951 = df3[50:214]["1951"].sum() cum_1952 = df3[76:211]["1952"].sum() cum_1953 = df3[76:208]["1953"].sum() cum_1954 = df3[47:214]["1954"].sum() cum_1955 = df3[61:218]["1955"].sum() cum_1956 = df3[61:204]["1956"].sum() cum_1957 = df3[64:225]["1957"].sum() cum_1958 = df3[81:186]["1958"].sum() cum_1959 = df3[75:215]["1959"].sum() cum_1960 =df3[41:192]["1960"].sum() cum_1961 = df3[84:225]["1961"].sum() cum_1962 =df3[56:212]["1962"].sum() cum_1963 =df3[50:272]["1963"].sum() cum_1964 =df3[58:196]["1964"].sum() cum_1965 =df3[71:218]["1965"].sum() cum_1966 =df3[22:221]["1966"].sum() cum_1967 =df3[57:203]["1967"].sum() cum_1968 =df3[36:332]["1968"].sum() cum_1969 =df3[68:216]["1969"].sum() cum_1970 =df3[97:207]["1970"].sum() cum_1971=df3[51:216]["1971"].sum() saladier={'Années':[1945, 1946, 1947, 1948, 1949, 1950, 1951, 1952, 1953, 1954, 1955, 1956, 1957, 1958, 1959, 1960, 1961, 1962, 1963, 1964, 1965, 1966, 1967, 1968, 1969, 1970, 1971], 'cumul':[(cum_1945), (cum_1946), (cum_1947), (cum_1948), (cum_1949), (cum_1950), (cum_1951), (cum_1952), (cum_1953), (cum_1954), (cum_1955), (cum_1956), (cum_1957), (cum_1958), (cum_1959), (cum_1960), (cum_1961), (cum_1962), (cum_1963), (cum_1964), (cum_1965), (cum_1966), (cum_1967), (cum_1968), (cum_1969), (cum_1970), (cum_1971)] } df_final= pd.DataFrame(saladier, columns=['Années', 'cumul'], index= None) df_final.to_excel("saladier.xlsx")
Je le trouve assez long du coup j'aimerais introduire une boucle "for" pour les années, les numéros des index pour lesquels il doit m'afficher la somme et le nom de la ville correspondante.
A la fin je veux obtenir:
Années cumul 1945 817,4 1946 1213,4 1947 948,5 1948 1118,2 1949 1001,4 1950 1367,5 1951 1317,7 1952 884,6 1953 1014,2 1954 2156,4 1955 1511,8 1956 1762,9 1957 1425,6 1958 820,8 1959 1434 1960 1813,8 1961 1497,4 1962 1567,5 1963 1939 1964 1535,4 1965 1433,8 1966 1501,7 1967 1435,5 1968 2339,5 1969 1260,6 1970 1239,3 1971 1138,3
Merci d'avance pour votre aide.
Partager