'How to calculate values in Pandas Dataframe itself?
You can see my dataframe below, x values are different value, but other values are same with left values, for example, column 15 and column 16 are same value. I wanna write average of first 15 values in 16 column. Also, I need to apply same method for all rows, in Feb, 15. column shows average of first 14 columns and 16. column shows average of first 15 columns. How can do that calculate averages or another functions for all cell?
Also, i have more than one dataframe like that can we use loop for easier calculation
Months 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Jan x x x x x x x x x x x x x x 1,2 1,2
Feb x x x x x x x x x x x x x 4,2 4,2 4,2
Mar x x x x x x x x x x x x 1,2 1,2 1,2 1,2
Apr x x x x x x x x x x x 0,8 0,8 0,8 0,8 0,8
May x x x x x x x x x x 3,5 3,5 3,5 3,5 3,5 3,5
Jun x x x x x x x x x 1,8 1,8 1,8 1,8 1,8 1,8 1,8
July x x x x x x x x 1,0 1,0 1,0 1,0 1,0 1,0 1,0 1,0
Aug x x x x x x x 0,8 0,8 0,8 0,8 0,8 0,8 0,8 0,8 0,8
Sep x x x x x x 0,6 0,6 0,6 0,6 0,6 0,6 0,6 0,6 0,6 0,6
Oct x x x x x 0,9 0,9 0,9 0,9 0,9 0,9 0,9 0,9 0,9 0,9 0,9
Nov x x x x 2,3 2,3 2,3 2,3 2,3 2,3 2,3 2,3 2,3 2,3 2,3 2,3
Example output:
Months 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
Jan x x x x x x x x x x x x x x =Average(B2:O2) =Average(B2:P2)
Feb x x x x x x x x x x x x x =Average(B3:N3) =Average(B3:O3) =Average(B3:P3)
Mar x x x x x x x x x x x x =Average(B4:M4) =Average(B4:N4) =Average(B4:O4) =Average(B4:P4)
Apr x x x x x x x x x x x =Average(B5:L5) =Average(B5:M5) =Average(B5:N5) =Average(B5:O5) =Average(B5:P5)
May x x x x x x x x x x 3,5 3,5 =Average(B5:M6) =Average(B5:N6) =Average(B6:O6) =Average(B6:P6)
Jun x x x x x x x x x 1,8 1,8 1,8 =Average(B5:M7) =Average(B5:N7) =Average(B7:O7) =Average(B7:P7)
July x x x x x x x x 1,0 1,0 1,0 1,0 =Average(B5:M8) =Average(B5:N8) =Average(B8:O8) =Average(B8:P8)
Aug x x x x x x x 0,8 0,8 0,8 0,8 0,8 =Average(B5:M9) =Average(B5:N9) =Average(B9:O9) =Average(B9:P9)
Sep x x x x x x 0,6 0,6 0,6 0,6 0,6 0,6 =Average(B5:M10) =Average(B5:N10) =Average(B10:O10) =Average(B10:P10)
Oct x x x x x 0,9 0,9 0,9 0,9 0,9 0,9 0,9 =Average(B5:M11) =Average(B5:N11) =Average(B11:O11) =Average(B11:P11)
Nov x x x x 2,3 2,3 2,3 2,3 2,3 2,3 2,3 2,3 =Average(B5:M12) =Average(B5:N12) =Average(B12:O12) =Average(B12:P12)
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
Solution | Source |
---|