Как найти среднее значение для каждого id за 12 периодов для каждой колонки?
Есть такие данные из CSV файла:
Как найти средние значение future_0...future_49 за 12 периодов для каждого id?
Ответы (1 шт):
Автор решения: MaxU
→ Ссылка
чтобы найти средние значения featute_0-featute_49 для каждого id нужно просто избавиться от ненужного столбца period, сгруппировать фрейм по столбцу id и найти среднее для всех оставшихся столбцов:
df = pd.read_csv(r"D:\download\mega.dp.ua_tabular_data.csv")
res = df.drop(columns=["period"]).groupby("id").mean()
результат:
In [72]: res
Out[72]:
feature_0 feature_1 feature_2 feature_3 feature_4 ... feature_45 feature_46 feature_47 \
id ...
0 110.000000 60.916667 0.238880 293.635812 430.134167 ... 0.750000 0.508078 142.833333
1 110.000000 135.541667 0.060443 6940.579852 1119.352500 ... 6.750000 0.331702 135.916667
2 110.166667 0.597500 5.203073 0.141369 4.168333 ... 0.000000 0.195109 10.083333
3 110.000000 62.500000 2.589315 1515.795679 75.613333 ... 1.000000 0.690459 106.000000
4 110.000000 126.000000 0.133693 2568.283478 460.332500 ... 36.333333 0.819175 190.333333
... ... ... ... ... ... ... ... ... ...
5101 110.000000 94.166667 0.292280 180.142899 1218.388333 ... 12.083333 NaN 167.250000
5102 110.000000 80.675000 0.755737 0.000000 215.499167 ... 8.500000 0.453970 102.416667
5103 110.250000 22.568333 0.801533 0.000000 145.231667 ... 5.583333 0.352421 17.250000
5104 110.000000 86.230833 0.068594 988.894377 72.641667 ... 4.333333 0.714110 60.916667
5105 110.000000 76.458333 NaN 0.000000 83.882500 ... 0.166667 0.075049 43.666667
feature_48 feature_49
id
0 315.011667 0.250000
1 NaN 204.334131
2 2.470000 0.000000
3 55.316667 6.666667
4 NaN 208.911004
... ... ...
5101 858.400833 6.500000
5102 187.505833 1.666667
5103 NaN 7.666667
5104 49.870833 4.583333
5105 58.860833 0.000000
[5106 rows x 49 columns]
