{"id":400027,"date":"2024-06-29T15:00:32","date_gmt":"2024-06-29T15:00:32","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=400027"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=400027","title":{"rendered":"<span>\u0410\u043d\u0430\u043b\u0438\u0437 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438 \u0430\u043d\u0442\u0440\u043e\u043f\u043e\u043c\u0435\u0442\u0440\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0425\u043e\u043a\u043a\u0435\u0439\u043d\u043e\u0439 \u041b\u0438\u0433\u0438<\/span>"},"content":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0442 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u0438 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0425\u043e\u043a\u043a\u0435\u0439\u043d\u043e\u0439 \u041b\u0438\u0433\u0438 (NHL) \u0432\u0441\u0435 \u0447\u0430\u0449\u0435 \u0441\u043b\u044b\u0448\u0438\u0448\u044c \u0442\u0435\u0437\u0438\u0441 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043b\u0438\u0433\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043c\u043e\u043b\u043e\u0436\u0435 \u0438 \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0443\u043a\u043b\u043e\u043d \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0431\u043e\u043b\u0435\u0435 \u043d\u0438\u0437\u043a\u0438\u0445 \u0438 \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0445, \u043d\u043e \u044e\u0440\u043a\u0438\u0445 \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u043e\u0432. \u0425\u043e\u043a\u043a\u0435\u0439 \u0441 \u0435\u0433\u043e \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u043c\u0438 \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u0430\u043c\u0438 \u0443\u0445\u043e\u0434\u0438\u0442 \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u0435, \u0430 \u0433\u0430\u0431\u0430\u0440\u0438\u0442\u044b \u0442\u0430\u043a\u0438\u0445 &#171;\u0433\u0438\u0433\u0430\u043d\u0442\u043e\u0432&#187;, \u043a\u0430\u043a \u043d\u0430\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 New York Ranger Matt Rempe \u0441 \u0435\u0433\u043e \u0440\u043e\u0441\u0442\u043e\u043c 200 \u0441\u043c \u0438 \u0432\u0435\u0441\u043e\u043c 109 \u043a\u0433 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0435, \u0447\u0435\u043c \u0441\u0430\u043c\u0430 \u0438\u0433\u0440\u0430 \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u0430.<\/p>\n<p>\u042f \u0432\u0437\u044f\u043b \u0441 \u0441\u0430\u0439\u0442\u0430 <a href=\"https:\/\/www.nhl.com\/stats\/\" rel=\"noopener noreferrer nofollow\">NHL<\/a>  \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 10 \u0441\u0435\u0437\u043e\u043d\u0430\u0445 \u043f\u043e \u0438\u0433\u0440\u043e\u043a\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0432\u0435\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 10 \u043c\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0435\u0437\u043e\u043d\u0435.<\/p>\n<p><strong>\u041f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u044d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043b\u0438 \u043b\u0438\u0433\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043c\u043e\u043b\u043e\u0436\u0435, \u0430 \u0438\u0433\u0440\u043e\u043a\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0435 \u0438 \u043b\u0435\u0433\u0447\u0435<\/strong><\/p>\n<h2>\u0414\u0430\u043d\u043d\u044b\u0435<\/h2>\n<p>\u0423 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u0441 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430\u043c\u0438 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u0438\u0433\u0440\u043e\u043a\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u044b\u0433\u0440\u0430\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 10 \u043c\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0435\u0437\u043e\u043d\u0435 NHL, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u044b\u0433\u0440\u0430\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 10 \u043c\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0435\u0437\u043e\u043d\u0435, \u0432\u0437\u044f\u0442\u044b\u0435 \u0441 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0430\u0439\u0442\u0430 <a href=\"https:\/\/www.nhl.com\/stats\/skaters\" rel=\"noopener noreferrer nofollow\">\u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0445\u043e\u043a\u043a\u0435\u0439\u043d\u043e\u0439 \u043b\u0438\u0433\u0438<\/a>. \u041e\u0441\u0442\u0430\u0432\u0438\u043c \u0441\u0442\u043e\u043b\u0431\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0442: <em>\u041f\u043e\u0437\u0438\u0446\u0438\u044f, \u0414\u0430\u0442\u0430 \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f, \u0420\u043e\u0441\u0442 \u0432 \u0434\u044e\u0439\u043c\u0430\u0445, \u0412\u0435\u0441 \u0432 \u0444\u0443\u043d\u0442\u0430\u0445, \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u044b\u0433\u0440\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u0442\u0447\u0435\u0439, \u0441\u0435\u0437\u043e\u043d, 1-\u0439 \u0441\u0435\u0437\u043e\u043d \u0438\u0433\u0440\u043e\u043a\u0430.<\/em><\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 5 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<\/th>\n<th>\n<p>Pos<\/p>\n<\/th>\n<th data-colwidth=\"108\" width=\"108\">\n<p>DOB<\/p>\n<\/th>\n<th>\n<p>Ht<\/p>\n<\/th>\n<th>\n<p>Wt<\/p>\n<\/th>\n<th>\n<p>GP<\/p>\n<\/th>\n<th>\n<p>season<\/p>\n<\/th>\n<th>\n<p>1st Season<\/p>\n<\/th>\n<\/tr>\n<tr>\n<th>\n<p>279<\/p>\n<\/th>\n<td>\n<p align=\"left\">D<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1983-06-08<\/p>\n<\/td>\n<td>\n<p align=\"left\">71<\/p>\n<\/td>\n<td>\n<p align=\"left\">180<\/p>\n<\/td>\n<td>\n<p align=\"left\">43<\/p>\n<\/td>\n<td>\n<p align=\"left\">2014-2015<\/p>\n<\/td>\n<td>\n<p align=\"left\">20062007<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>853<\/p>\n<\/th>\n<td>\n<p align=\"left\">C<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1987-08-07<\/p>\n<\/td>\n<td>\n<p align=\"left\">71<\/p>\n<\/td>\n<td>\n<p align=\"left\">200<\/p>\n<\/td>\n<td>\n<p align=\"left\">80<\/p>\n<\/td>\n<td>\n<p align=\"left\">2015-2016<\/p>\n<\/td>\n<td>\n<p align=\"left\">20052006<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>4411<\/p>\n<\/th>\n<td>\n<p align=\"left\">C<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1988-04-29<\/p>\n<\/td>\n<td>\n<p align=\"left\">74<\/p>\n<\/td>\n<td>\n<p align=\"left\">201<\/p>\n<\/td>\n<td>\n<p align=\"left\">70<\/p>\n<\/td>\n<td>\n<p align=\"left\">2019-2020<\/p>\n<\/td>\n<td>\n<p align=\"left\">20072008<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>1935<\/p>\n<\/th>\n<td>\n<p align=\"left\">C<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1991-02-22<\/p>\n<\/td>\n<td>\n<p align=\"left\">75<\/p>\n<\/td>\n<td>\n<p align=\"left\">200<\/p>\n<\/td>\n<td>\n<p align=\"left\">19<\/p>\n<\/td>\n<td>\n<p align=\"left\">2016-2017<\/p>\n<\/td>\n<td>\n<p align=\"left\">20142015<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>5379<\/p>\n<\/th>\n<td>\n<p align=\"left\">D<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1994-07-25<\/p>\n<\/td>\n<td>\n<p align=\"left\">72<\/p>\n<\/td>\n<td>\n<p align=\"left\">181<\/p>\n<\/td>\n<td>\n<p align=\"left\">57<\/p>\n<\/td>\n<td>\n<p align=\"left\">2021-2022<\/p>\n<\/td>\n<td>\n<p align=\"left\">20132014<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h2>\u041e\u043f\u0438\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430<\/h2>\n<p>\u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0435\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 (\u0441\u0440\u0435\u0434\u043d\u0435\u0435, \u043c\u0435\u0434\u0438\u0430\u043d\u0430, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u0438\u0435) \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0441\u0435\u0437\u043e\u043d\u0443.<\/p>\n<pre><code># \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 def calculate_statistics(data, season, column):     stats = data.groupby(season)[column].agg(['mean', 'median', 'std'])     return stats  # \u0420\u0430\u0441\u0447\u0435\u0442 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 age_stats = calculate_statistics(data,'season', 'age') height_stats = calculate_statistics(data,'season', 'Ht') weight_stats = calculate_statistics(data,'season', 'Wt') height_stats_cm = calculate_statistics(data,'season', 'Ht_cm') weight_stats_kg = calculate_statistics(data,'season', 'Wt_kg')   # \u0412\u044b\u0432\u043e\u0434 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 print(\"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430:\") print(age_stats) print(\"\\n\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0440\u043e\u0441\u0442\u0430:\") print(height_stats_cm) print(\"\\n\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u0435\u0441\u0430:\") print(weight_stats_kg)<\/code><\/pre>\n<p>\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430:<br \/> mean  median       std<br \/> season<br \/> 2014-2015  27.865753    27.0  4.548903<br \/> 2015-2016  27.573370    27.0  4.436711<br \/> 2016-2017  27.427989    27.0  4.430596<br \/> 2017-2018  27.362319    27.0  4.341212<br \/> 2018-2019  27.212516    27.0  4.090101<br \/> 2019-2020  27.463315    27.0  4.105912<br \/> 2020-2021  27.575549    27.0  4.110550<br \/> 2021-2022  27.683168    27.0  4.212581<br \/> 2022-2023  28.000000    28.0  4.081955<br \/> 2023-2024  28.239637    28.0  4.213909<\/p>\n<p>\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0440\u043e\u0441\u0442\u0430:<br \/> mean  median       std<br \/> season<br \/> 2014-2015  185.649315   185.0  5.279594<br \/> 2015-2016  185.884511   185.0  5.330337<br \/> 2016-2017  185.705163   185.0  5.273089<br \/> 2017-2018  185.566535   185.0  5.272569<br \/> 2018-2019  185.674055   185.0  5.215526<br \/> 2019-2020  185.710598   185.0  5.318094<br \/> 2020-2021  185.901099   185.0  5.359289<br \/> 2021-2022  185.923267   185.0  5.485504<br \/> 2022-2023  186.042636   185.0  5.443297<br \/> 2023-2024  185.879534   185.0  5.565527<\/p>\n<p>\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u0435\u0441\u0430:<br \/> mean  median       std<br \/> season<br \/> 2014-2015  92.153096   92.08  6.704483<br \/> 2015-2016  92.150014   92.08  6.875161<br \/> 2016-2017  91.576182   91.17  6.844911<br \/> 2017-2018  91.259802   90.72  6.806483<br \/> 2018-2019  91.076063   90.72  6.912537<br \/> 2019-2020  90.994918   90.72  7.004026<br \/> 2020-2021  90.877074   90.72  6.756815<br \/> 2021-2022  90.740681   90.72  6.973008<br \/> 2022-2023  90.836021   90.72  6.884751<br \/> 2023-2024  90.535557   90.72  7.058457<\/p>\n<p>\u0412\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u043a\u0430\u043a\u0438\u0445-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0439 \u043d\u0435 \u0432\u0438\u0434\u043d\u043e, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u0438 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f<\/p>\n<h2>\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445<\/h2>\n<pre><code># \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0437\u043e\u043d\u044b seasons = data['season'].unique()  # \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0442\u0440\u043e\u043a \u0438 \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u0434\u043b\u044f \u0441\u0443\u0431\u043f\u043b\u043e\u0442\u043e\u0432 nrows = 5 ncols = 2  # \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c \u0441 \u043a\u0440\u0438\u0432\u044b\u043c\u0438 \u043f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c def plot_histograms_with_density(column, title, xlabel):     fig, axes = plt.subplots(nrows=nrows, ncols=ncols, figsize=(15, 30))     fig.suptitle(title, fontsize=20)     axes = axes.flatten()     for i, season in enumerate(seasons):         season_data = data[data['season'] == season][column].to_numpy()         if column == 'Wt':             bins = int(((np.max(season_data) - np.min(season_data)))\/\/4)         else:             bins = int((np.max(season_data) - np.min(season_data))) +1         axes[i].hist(season_data,                       bins=bins, density = False,                       range = [np.round(np.min(season_data)).astype(int), np.round(np.max(season_data).astype(int)+1)])         axes[i].set_title(season)         axes[i].set_xlabel(xlabel)     plt.tight_layout(rect=[0.03, 0.03, 1, 0.95])     plt.subplots_adjust(top=0.95)     plt.show()         # Draw the density plot     plt.figure(figsize=(12, 8))     sns.set(style=\"whitegrid\")     for season in seasons:         season_data = data[data['season'] == season][column]         season_data.plot.density(ind = np.arange(min(season_data), max(season_data)+1))          # Plot formatting     plt.legend(seasons)     plt.title('Density Plot, '+ column)     plt.xlabel(xlabel)     plt.ylabel('Density')     plt.show()      # \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c \u0441 \u043a\u0440\u0438\u0432\u044b\u043c\u0438 \u043f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 plot_histograms_with_density('age', '\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0412\u043e\u0437\u0440\u0430\u0441\u0442') plot_histograms_with_density('Ht', '\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0440\u043e\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0420\u043e\u0441\u0442 (\u0434\u044e\u0439\u043c)') plot_histograms_with_density('Wt', '\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0412\u0435\u0441 (\u0444\u0443\u043d\u0442)')<\/code><\/pre>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/102\/3bc\/5a1\/1023bc5a1b02e05c56417d31f8c5fe19.png\" width=\"1036\" height=\"2053\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/102\/3bc\/5a1\/1023bc5a1b02e05c56417d31f8c5fe19.png\"\/><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/35b\/33e\/5b9\/35b33e5b9b50ae7d813899a3a1a3b24c.png\" width=\"735\" height=\"496\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/35b\/33e\/5b9\/35b33e5b9b50ae7d813899a3a1a3b24c.png\"\/><\/figure>\n<hr\/>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f7e\/01b\/bb5\/f7e01bbb5234d50af233ced48f5e7912.png\" width=\"1039\" height=\"2055\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/f7e\/01b\/bb5\/f7e01bbb5234d50af233ced48f5e7912.png\"\/><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/cef\/7a1\/233\/cef7a12335eed412e71bed54c72473c2.png\" width=\"729\" height=\"496\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/cef\/7a1\/233\/cef7a12335eed412e71bed54c72473c2.png\"\/><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/5cf\/773\/643\/5cf773643c641bf73c18fc97673fd057.png\" width=\"1034\" height=\"2053\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5cf\/773\/643\/5cf773643c641bf73c18fc97673fd057.png\"\/><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/c80\/74a\/298\/c8074a29839d9df9d2c88341da1b68d0.png\" width=\"729\" height=\"496\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/c80\/74a\/298\/c8074a29839d9df9d2c88341da1b68d0.png\"\/><\/figure>\n<p>\u041f\u043e \u0433\u0440\u0430\u0444\u0438\u043a\u0430\u043c \u0442\u043e\u0436\u0435 \u0441\u043b\u043e\u0436\u043d\u043e \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0432\u044b\u0432\u043e\u0434\u044b, \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u043e\u043c\u0443 \u0430\u043d\u0430\u043b\u0438\u0437\u0443<\/p>\n<h2>\u0420\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432<\/h2>\n<p>\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u044f \u041b\u0438\u043d\u0435\u0439\u043d\u0443\u044e \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044e, \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043c \u0433\u0440\u0430\u0444\u0438\u043a \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432 \u0438 \u0442\u0440\u0435\u043d\u0434\u043e\u0432\u043e\u0439 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u043e\u0439 \u043b\u0438\u043d\u0438\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0430. \u0414\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0439 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u043e\u0437\u0440\u0430\u0441\u0442 \u0438\u0433\u0440\u043e\u043a\u043e\u0432) \u0431\u044b\u043b\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e. <\/p>\n<p>\u0412\u0430\u0436\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0442\u043a\u0438 (\u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0438) \u0431\u044b\u043b\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b. \u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432 \u043c\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f <code>QQ-\u043f\u043b\u043e\u0442\u0430<\/code> \u0438 \u0442\u0435\u0441\u0442\u0430 <code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a\u0430<\/code><\/p>\n<pre><code># \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432 def regresion_model(stats):     # \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438     X = stats.index.values.reshape(-1, 1)     y_mean = stats['mean'].values     # \u041b\u0438\u043d\u0435\u0439\u043d\u0430\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f     model = LinearRegression()     model.fit(X, y_mean)     trend_line = model.predict(X)     return trend_line, model. intercept_ , model. coef_[0]  # \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432 \u0438 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u043e\u0439 \u043b\u0438\u043d\u0438\u0438 def plot_trend_with_regression(stats, title, ylabel):          y_mean = stats['mean'].values     std_dev = stats['std'].values     trend_line, _, _ = regresion_model(stats)     residuals = y_mean - trend_line     # \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u0430     plt.figure(figsize=(12, 8))     sns.set(style=\"whitegrid\")     plt.plot(stats.index.to_numpy(), y_mean, marker='o', label='\u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435')     plt.plot(stats.index.to_numpy(), trend_line, color='red', label='\u0422\u0440\u0435\u043d\u0434\u043e\u0432\u0430\u044f \u043b\u0438\u043d\u0438\u044f')     plt.fill_between(stats.index, stats['mean'] - stats['std'], stats['mean'] + stats['std'], color='gray', alpha=0.2, label='\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u0438\u0435')     for i in range(len(stats)):         plt.annotate(f'{y_mean[i]:.2f}', (stats.index.to_numpy()[i], y_mean[i]),                       textcoords=\"offset points\", xytext=(0,10), ha='center')         plt.annotate(f'\u00b1{std_dev[i]:.2f}', (stats.index.to_numpy()[i], y_mean[i] - std_dev[i]),                       textcoords=\"offset points\", xytext=(0,-10), ha='center', color='blue')     plt.title(title, fontsize=20)     plt.xlabel('\u0421\u0435\u0437\u043e\u043d', fontsize=15)     plt.ylabel(ylabel, fontsize=15)     plt.legend()     plt.show()          # \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432     sm.qqplot(residuals, line ='45')     plt.title('QQ-\u043f\u043b\u043e\u0442 \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432')     plt.show()              stat, p_value = shapiro(residuals)     print(f'\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430={stat}, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435={p_value}')     if p_value > 0.05:         print('\u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e')     else:         print('\u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u043d\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e')   age_stats = calculate_statistics(data, 'season_numeric', 'age') height_stats = calculate_statistics(data,'season_numeric', 'Ht') weight_stats = calculate_statistics(data, 'season_numeric', 'Wt') # \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u043e\u0432 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 plot_trend_with_regression(age_stats, '\u0422\u0440\u0435\u043d\u0434 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '') plot_trend_with_regression(height_stats, '\u0422\u0440\u0435\u043d\u0434 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u043e\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0420\u043e\u0441\u0442 (\u0434\u044e\u0439\u043c\u044b)') plot_trend_with_regression(weight_stats, '\u0422\u0440\u0435\u043d\u0434 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0412\u0435\u0441 (\u0444\u0443\u043d\u0442\u044b)')<\/code><\/pre>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/2f6\/b08\/e0c\/2f6b08e0ccd68aae218d888e3a9fbfd5.png\" width=\"723\" height=\"507\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/2f6\/b08\/e0c\/2f6b08e0ccd68aae218d888e3a9fbfd5.png\"\/><\/figure>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/d93\/16b\/08d\/d9316b08d258859dc01f18a974cd5d7d.png\" width=\"394\" height=\"279\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/d93\/16b\/08d\/d9316b08d258859dc01f18a974cd5d7d.png\"\/><\/figure>\n<p><code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a<\/code> \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430=<strong>0.9729418158531189<\/strong>, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435=<strong>0.9166999459266663<\/strong> \u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b <strong><em>\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e<\/em><\/strong>  <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/e4e\/dff\/728\/e4edff7281c6bf896497210bb187c730.png\" width=\"729\" height=\"507\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/e4e\/dff\/728\/e4edff7281c6bf896497210bb187c730.png\"\/><\/figure>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/102\/569\/3bd\/1025693bdafb5e9d83e14a66dc7819ac.png\" width=\"394\" height=\"279\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/102\/569\/3bd\/1025693bdafb5e9d83e14a66dc7819ac.png\"\/><\/figure>\n<p><code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a<\/code> \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430=<strong>0.933466374874115<\/strong>, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435=<strong>0.48284029960632324<\/strong> \u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b <strong><em>\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e<\/em><\/strong>  <\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/37a\/809\/c57\/37a809c5726d1170aa4c2b0854a680d8.png\" width=\"705\" height=\"507\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/37a\/809\/c57\/37a809c5726d1170aa4c2b0854a680d8.png\"\/><\/figure>\n<figure class=\"\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/338\/bf3\/d23\/338bf3d2358c781626478865a5b2e267.png\" width=\"394\" height=\"279\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/338\/bf3\/d23\/338bf3d2358c781626478865a5b2e267.png\"\/><\/figure>\n<p><code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a<\/code> \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430=<strong>0.9445896148681641<\/strong>, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435=<strong>0.6051148176193237<\/strong> \u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b <strong><em>\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e<\/em><\/strong>  <\/p>\n<p>\u041c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0442\u0440\u0435\u043d\u0434 \u0440\u043e\u0441\u0442\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f, \u0430 \u0442\u0440\u0435\u043d\u0434 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0434\u0430\u0436\u0435 \u0438\u0434\u0435\u0442 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u0432\u0435\u0440\u0445.<\/p>\n<h2>\u0410\u043d\u0430\u043b\u0438\u0437 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438. \u0422\u0435\u0441\u0442 \u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430<\/h2>\n<p>\u0414\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u043d\u0434\u0430 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0422\u0435\u0441\u0442 <a href=\"https:\/\/doi.org\/10.21105\/joss.01556\" rel=\"noopener noreferrer nofollow\">\u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430<\/a>. \u041e\u043d \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043e\u0449\u043d\u044b\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u043c \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u043d\u0434\u043e\u0432 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u0430\u0445, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043a\u043e\u0433\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e. <\/p>\n<pre><code>features = ['age', 'Ht', 'Wt'] result = [] for column in features:     MK = mk. original_test (data.groupby('season')[column].agg('mean'))     stats = calculate_statistics(data, 'season_numeric', column)     _, x0, x = regresion_model(stats)     stats = [MK.p, MK.trend, x0,x, 10*x, MK.Tau]     result.append(stats)<\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0432\u0437\u0433\u043b\u044f\u043d\u0435\u043c \u043d\u0430 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 \u0437\u0430 \u0441\u0435\u0437\u043e\u043d\u044b &#171;2014-2015&#187; &#8212; &#171;2023-2024&#187;  <\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<\/th>\n<th>\n<p>p-value<\/p>\n<\/th>\n<th>\n<p>regression<\/p>\n<\/th>\n<th>\n<p>slope<\/p>\n<\/th>\n<th>\n<p>intercept<\/p>\n<\/th>\n<th>\n<p>effect<\/p>\n<\/th>\n<th>\n<p>Tau<\/p>\n<\/th>\n<\/tr>\n<tr>\n<th>\n<p>Age<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.152406<\/p>\n<\/td>\n<td>\n<p align=\"left\">no trend<\/p>\n<\/td>\n<td>\n<p align=\"left\">-76.611793<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.051623<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.516228<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.377778<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>Height<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.107405<\/p>\n<\/td>\n<td>\n<p align=\"left\">no trend<\/p>\n<\/td>\n<td>\n<p align=\"left\">49.991625<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.011496<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.114960<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.422222<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>Weight<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.000172<\/p>\n<\/td>\n<td>\n<p align=\"left\">decreasing<\/p>\n<\/td>\n<td>\n<p align=\"left\">987.935300<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.389616<\/p>\n<\/td>\n<td>\n<p align=\"left\">-3.896159<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.955556<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0433\u0434\u0435: <\/p>\n<ul>\n<li>\n<p><code>p-value<\/code> &#8212; \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 p-value \u0442\u0435\u0441\u0442\u0430 <\/p>\n<\/li>\n<li>\n<p><code>regression<\/code> &#8212; \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044c \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u0438 \u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u043d\u0434\u0430<\/p>\n<\/li>\n<li>\n<p><code>slope<\/code> \u0438 <code>intercept<\/code> &#8212; \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442\u044b \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 (\u043d\u0430\u043a\u043b\u043e\u043d \u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442)<\/p>\n<\/li>\n<li>\n<p><code>effect<\/code> &#8212; \u0421\u0440\u0435\u0434\u043d\u044f\u044f \u0440\u0430\u0437\u043d\u0438\u0446\u0430 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0438 \u0432 \u043a\u043e\u043d\u0446\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u0443\u0435\u043c\u043e\u0433\u043e \u043f\u0435\u0440\u0438\u043e\u0434\u0430<\/p>\n<\/li>\n<li>\n<p><code>Tau<\/code> &#8212; \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u0438 \u041a\u0435\u043d\u0434\u0435\u043b\u043b\u0430. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043e\u0442 -1 \u0434\u043e 1. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 1 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u0443\u044e \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044e (\u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u044e\u0442\u0441\u044f), \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 -1 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u0438\u0434\u0435\u0430\u043b\u044c\u043d\u0443\u044e \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u044e (\u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0443\u043c\u0435\u043d\u044c\u0448\u0430\u044e\u0442\u0441\u044f).<\/p>\n<\/li>\n<\/ul>\n<p>\u041c\u044b \u0432\u0438\u0434\u0438\u043c \u0447\u0435\u0442\u043a\u0438\u0439 \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432. \u0417\u0430 10 \u043b\u0435\u0442 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u0441\u043e\u0441\u0442\u0430\u0432\u0438\u043b\u0430 <strong>3,896<\/strong> \u0444\u0443\u043d\u0442\u0430 \u0438\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e <strong>1,77<\/strong> \u043a\u0433. \u0421 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u044d\u0442\u043e \u043d\u0435 \u0442\u0430\u043a\u0430\u044f \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0440\u0430\u0437\u043d\u0438\u0446\u0430, \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043a\u043e\u044d\u0444\u0444\u0438\u0446\u0438\u0435\u043d\u0442 \u043a\u043e\u0440\u0440\u0435\u043b\u044f\u0446\u0438\u0438 \u041a\u0435\u043d\u0434\u0435\u043b\u043b\u0430 <code>Tau<\/code> \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e\u0431 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u043c <em>\u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u043c \u0442\u0440\u0435\u043d\u0434\u0435<\/em><\/p>\n<h2>\u0420\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438<\/h2>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u043e\u043a\u0430\u0436\u0435\u0442 \u0422\u0435\u0441\u0442 \u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430 \u0434\u043b\u044f \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u0439 \u043f\u043e\u0437\u0438\u0446\u0438\u0438.<\/p>\n<pre><code>result = [] for position in [defenders_weight_stats, forwards_weight_stats]:     MK = mk. original_test (position['mean'])     #stats = calculate_statistics(defenders_weight_stats, 'season_numeric', 'mean')     _, x0, x = regresion_model(position)     stats = [MK.p, MK.trend, x0,x, 10*x, MK.Tau]     result.append(stats)<\/code><\/pre>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<\/th>\n<th>\n<p>p-value<\/p>\n<\/th>\n<th>\n<p>regression<\/p>\n<\/th>\n<th>\n<p>slope<\/p>\n<\/th>\n<th>\n<p>intercept<\/p>\n<\/th>\n<th>\n<p>effect<\/p>\n<\/th>\n<th>\n<p>Tau<\/p>\n<\/th>\n<\/tr>\n<tr>\n<th>\n<p>Defenders<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.000677<\/p>\n<\/td>\n<td>\n<p align=\"left\">decreasing<\/p>\n<\/td>\n<td>\n<p align=\"left\">1274.143826<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.529516<\/p>\n<\/td>\n<td>\n<p align=\"left\">-5.295163<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.866667<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>Forwards<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.012266<\/p>\n<\/td>\n<td>\n<p align=\"left\">decreasing<\/p>\n<\/td>\n<td>\n<p align=\"left\">836.922875<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.315804<\/p>\n<\/td>\n<td>\n<p align=\"left\">-3.158039<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.644444<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p><em>\u041c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0442\u0440\u0435\u043d\u0434 \u0434\u043b\u044f \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044f \u0432\u0435\u0441\u0430 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043a\u0430\u043a \u0434\u043b\u044f, \u0437\u0430\u0449\u0438\u0442\u043d\u0438\u043a\u043e\u0432, \u0442\u0430\u043a \u0438 \u0434\u043b\u044f \u043d\u0430\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0445, \u043d\u043e \u0434\u043b\u044f \u0437\u0430\u0449\u0438\u0442\u043d\u0438\u043a\u043e\u0432 \u043e\u043d \u0431\u043e\u043b\u0435\u0435 \u0432\u044b\u0440\u0430\u0436\u0435\u043d. \u0417\u0430 10 \u043b\u0435\u0442 \u0441\u0440\u0435\u0434\u043d\u0438\u0439 \u0432\u0435\u0441 \u0437\u0430\u0449\u0438\u0442\u043d\u0438\u043a\u043e\u0432 \u0441\u043e\u043a\u0440\u0430\u0442\u0438\u043b\u0441\u044f \u043d\u0430 <\/em><strong><em>5,3<\/em><\/strong><em> \u0444\u0443\u043d\u0442\u0430 \u0438\u043b\u0438 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e <\/em><strong><em>2,4<\/em><\/strong><em> \u043a\u0433.<\/em><\/p>\n<h2>\u0410\u043d\u0430\u043b\u0438\u0437 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432<\/h2>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c, \u043a\u0430\u043a \u0438\u0437\u043c\u0435\u043d\u0438\u043b\u0438\u0441\u044c \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430, \u0434\u043b\u044f \u0438\u0433\u0440\u043e\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b\u0438 \u0441\u0432\u043e\u0438 \u0434\u0435\u0431\u044e\u0442\u043d\u044b\u0435 \u0441\u0435\u0437\u043e\u043d\u044b \u0432 \u043b\u0438\u0433\u0435. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043d\u0430\u043c \u043f\u043e\u043d\u044f\u0442\u044c, \u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u043b\u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0440\u043e\u0441\u0442\u0443 \u0438 \u0432\u0435\u0441\u0443 \u0434\u043b\u044f \u043d\u043e\u0432\u0438\u0447\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442 \u0441\u0432\u043e\u0439 \u043f\u0443\u0442\u044c \u0432 \u043b\u0438\u0433\u0435.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/a8f\/bb6\/c22\/a8fbb6c22ee09aaf1944c0f5ef9e54f2.png\" width=\"723\" height=\"507\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/a8f\/bb6\/c22\/a8fbb6c22ee09aaf1944c0f5ef9e54f2.png\"\/><\/figure>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/755\/d14\/18d\/755d1418d7b64b187e38dfb8751bc27e.png\" width=\"729\" height=\"507\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/755\/d14\/18d\/755d1418d7b64b187e38dfb8751bc27e.png\"\/><\/figure>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u0442\u0435\u0441\u0442\u0430 <code>\u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430<\/code><\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<\/th>\n<th>\n<p>p-value<\/p>\n<\/th>\n<th>\n<p>regression<\/p>\n<\/th>\n<th>\n<p>slope<\/p>\n<\/th>\n<th>\n<p>intercept<\/p>\n<\/th>\n<th>\n<p>effect, lb<\/p>\n<\/th>\n<th>\n<p>effect, kg<\/p>\n<\/th>\n<th>\n<p>Tau<\/p>\n<\/th>\n<\/tr>\n<tr>\n<th>\n<p>Height<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.474274<\/p>\n<\/td>\n<td>\n<p align=\"left\">no trend<\/p>\n<\/td>\n<td>\n<p align=\"left\">-8.207392<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.040279<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.402788<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.182701<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.2<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>Weight<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.474274<\/p>\n<\/td>\n<td>\n<p align=\"left\">no trend<\/p>\n<\/td>\n<td>\n<p align=\"left\">996.715891<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.395773<\/p>\n<\/td>\n<td>\n<p align=\"left\">-3.957726<\/p>\n<\/td>\n<td>\n<p align=\"left\">-1.795193<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.2<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u041c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0430\u0445 \u0435\u0441\u0442\u044c \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u0443\u043a\u043b\u043e\u043d \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0443\u0432\u0435\u043b\u0438\u0447\u0435\u043d\u0438\u044f \u0440\u043e\u0441\u0442\u0430 \u0438 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u044f \u0438 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432, \u043f\u0440\u043e\u0432\u043e\u0434\u044f\u0449\u0438\u0445 1 \u0441\u0435\u0437\u043e\u043d \u0432 \u043b\u0438\u0433\u0435. \u041e\u0434\u043d\u0430\u043a\u043e, \u0442\u0435\u0441\u0442 <code>\u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430<\/code> \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e\u0431 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 \u0442\u0440\u0435\u043d\u0434\u043e\u0432. \u0417\u043d\u0430\u0447\u0438\u0442 \u043a\u043b\u0443\u0431\u044b \u043d\u0435 \u0441\u0442\u0440\u0435\u043c\u044f\u0442\u0441\u044f \u0431\u0440\u0430\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043b\u0435\u0433\u043a\u0438\u0445 \u0438 \u043d\u0438\u0437\u043a\u0438\u0445 \u0438\u0433\u0440\u043e\u043a\u043e\u0432, \u0430 \u0441\u043c\u043e\u0442\u0440\u044f\u0442 \u043d\u0430 \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 (\u0441\u043a\u0438\u043b\u044b \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u043e\u0432). \u0410 \u043e\u0442\u0440\u0438\u0446\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0442\u0440\u0435\u043d\u0434 \u0434\u043b\u044f \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u041d\u0425\u041b \u043c\u043e\u0436\u0435\u0442 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u044c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u044f\u0442 \u0432 \u043e\u043f\u0442\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u043e\u043d\u0434\u0438\u0446\u0438\u0438 \u0432 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0438\u0438 \u0441 \u0438\u0445 \u0444\u0438\u0437\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u043c\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u043c\u0438.<\/p>\n<h2>\u0420\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0430 \u043c\u0430\u0441\u0441\u044b \u0442\u0435\u043b\u0430<\/h2>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0435\u043c \u0438\u043d\u0434\u0435\u043a\u0441 \u043c\u0430\u0441\u0441\u044b \u0442\u0435\u043b\u0430 \u0434\u043b\u044f \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043b\u0438 \u043e\u043d \u043e\u0442 \u0441\u0435\u0437\u043e\u043d\u0430 \u043a \u0441\u0435\u0437\u043e\u043d\u0443.<br \/> \u0424\u043e\u0440\u043c\u0443\u043b\u0430 \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0430\u044f:<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"formula\" source=\"BMI = ( Weight in Pounds \/ (Height in inches) * (Height in inches) ) * 703\" alt=\"BMI = ( Weight in Pounds \/ (Height in inches) * (Height in inches) ) * 703\" src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/526\/4e3\/ec2\/5264e3ec2cf133fd6064b03f77cfbc08.svg\" width=\"605\" height=\"22\"\/><\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/8dd\/1ae\/a7a\/8dd1aea7ac03dd56cb70e335d762640d.png\" width=\"733\" height=\"507\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/8dd\/1ae\/a7a\/8dd1aea7ac03dd56cb70e335d762640d.png\"\/><\/figure>\n<p>\u0412\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u0432\u0438\u0434\u0435\u043d \u043f\u043e \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 BMI. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0447\u0442\u043e \u043f\u043e\u043a\u0430\u0436\u0435\u0442 \u0442\u0435\u0441\u0442 \u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<\/th>\n<th>\n<p>p-value<\/p>\n<\/th>\n<th>\n<p>regression<\/p>\n<\/th>\n<th>\n<p>slope<\/p>\n<\/th>\n<th>\n<p>intercept<\/p>\n<\/th>\n<th>\n<p>effect<\/p>\n<\/th>\n<th>\n<p>Tau<\/p>\n<\/th>\n<\/tr>\n<tr>\n<th>\n<p>BMI index<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.000083<\/p>\n<\/td>\n<td>\n<p align=\"left\">decreasing<\/p>\n<\/td>\n<td>\n<p align=\"left\">146.917965<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.059696<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.596957<\/p>\n<\/td>\n<td>\n<p align=\"left\">-1.0<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p><strong>\u0412\u0441\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0433\u043e\u0432\u043e\u0440\u044f\u0442 \u043e\u0431 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u043e\u043c \u0442\u0440\u0435\u043d\u0434\u0435 \u043d\u0430 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f BMI. \u0425\u043e\u0442\u044f \u044d\u0444\u0444\u0435\u043a\u0442 \u0437\u0430 10 \u043b\u0435\u0442 \u043d\u0435 \u0442\u0430\u043a\u043e\u0439 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439, \u043d\u043e \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439. \u041e\u0434\u043d\u0430\u043a\u043e, \u043f\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u043c \u0412\u041e\u0417, \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u044b \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0437\u043e\u043d\u0435 \u0438\u0437\u0431\u044b\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0432\u0435\u0441\u0430, \u0447\u0442\u043e, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0432\u043f\u043e\u043b\u043d\u0435 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0433\u043e \u0432\u0438\u0434\u0430 \u0441\u043f\u043e\u0440\u0442\u0430<\/strong><\/p>\n<h2>\u0412\u044b\u0432\u043e\u0434<\/h2>\n<p>\u0426\u0435\u043b\u044c\u044e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u044b\u043b\u043e \u0438\u0437\u0443\u0447\u0438\u0442\u044c \u043a\u0430\u043a \u0438\u0437\u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0444\u0438\u0437\u0438\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u0438\u043a\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e \u0425\u043e\u043a\u043a\u0435\u0439\u043d\u043e \u041b\u0438\u0433\u0438 (\u0440\u043e\u0441\u0442, \u0432\u0435\u0441, \u0432\u043e\u0437\u0440\u0430\u0441\u0442) \u0437\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 10 \u043b\u0435\u0442. \u0412 \u0445\u043e\u0434\u0435 \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b:<\/p>\n<ul>\n<li>\n<p>\u0417\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0435 10 \u043b\u0435\u0442 \u043d\u0430\u0431\u043e\u043b\u044e\u0434\u0430\u0435\u0442\u0441\u044f \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u041d\u0425\u041b.<\/p>\n<\/li>\n<li>\n<p>\u0422\u0440\u0435\u043d\u0434 \u043d\u0430 \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438 \u0440\u043e\u0441\u0442\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0435\u0442. \u0422\u043e \u0435\u0441\u0442\u044c \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 &#171;\u043b\u0438\u0433\u0430 \u043c\u043e\u043b\u043e\u0434\u0435\u0435\u0442&#187; &#8212; \u043d\u0435\u0432\u0435\u0440\u043d\u043e. \u0422\u0430\u043a \u0436\u0435 \u043c\u044b \u043f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0438\u0433\u0440\u043e\u043a\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0432\u043e\u0434\u044f\u0442 \u043f\u0435\u0440\u0432\u044b\u0439 \u0433\u043e\u0434 \u0432 \u043b\u0438\u0433\u0435 \u0438 \u043d\u0435 \u0432\u044b\u044f\u044f\u0432\u0438\u043b\u0438 \u0442\u0440\u0435\u043d\u0434\u044b. \u042d\u0442\u043e \u0437\u043d\u0430\u0447\u0438\u0442, \u0447\u0442\u043e <strong>\u0438\u0433\u0440\u043e\u043a\u0438 \u0437\u0430\u0445\u043e\u0434\u0438\u0442 \u0432 \u043b\u0438\u0433\u0443 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u043c\u0438 \u0441\u0440\u0435\u0434\u043d\u0438\u043c\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 \u043a\u0430\u0436\u0434\u044b\u0439 \u0441\u0435\u0437\u043e\u043d<\/strong>. \u0410 \u0443\u043c\u0435\u043d\u044c\u0448\u0435\u043d\u0438\u0435 \u0432\u0435\u0441\u0430 \u0438\u0434\u0435\u0442 \u0443\u0436\u0435 \u0432 \u0445\u043e\u0434\u0435 \u0442\u0440\u0435\u043d\u0438\u0440\u043e\u0432\u043e\u0447\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0432 \u043a\u043b\u0443\u0431\u0435. \u041c\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043b\u0438 \u043a\u0430\u043a \u043c\u0435\u043d\u044f\u043b\u0441\u044f \u0438\u043d\u0434\u0435\u043a\u0441 \u043c\u0430\u0441\u0441\u044b \u0442\u0435\u043b\u0430 \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u043e\u0432 \u0438 \u043d\u0430\u0448\u043b\u0438 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0439 \u0442\u0440\u0435\u043d\u0434 \u043a \u0435\u0433\u043e <strong><em>\u043f\u043e\u043d\u0438\u0436\u0435\u043d\u0438\u044e<\/em><\/strong>. \u0425\u043e\u0442\u044f \u0432 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u044b\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f\u0445 \u0446\u0438\u0444\u0440\u044b \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u044f \u0432\u0435\u0441\u0430 \u0438 BMI \u0438\u043d\u0434\u0435\u043a\u0441\u0430 \u043d\u0435 \u0442\u0430\u043a\u0438\u0435 \u0431\u043e\u043b\u044c\u0448\u0438\u0435. \u041e\u0434\u043d\u0430\u043a\u043e \u0442\u0435\u043d\u0434\u0435\u043d\u0446\u0438\u044f \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442. \u0418\u0433\u0440\u043e\u043a\u0438 \u041d\u0425\u041b \u043f\u043e\u0441\u0442\u0435\u043f\u0435\u043d\u043d\u043e \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u043b\u0435\u0433\u0447\u0435.<\/p>\n<\/li>\n<\/ul>\n<p>\u041e\u0442\u043a\u0440\u044b\u0442\u044b\u0439 \u043a\u043e\u0434 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d \u0432 \u043c\u043e\u0435\u043c \u0433\u0438\u0442\u0435 <a href=\"https:\/\/github.com\/permyakov-andrew\/Hockey\/tree\/main\/NHL_players_analyst\" rel=\"noopener noreferrer nofollow\">https:\/\/github.com\/permyakov-andrew\/Hockey\/tree\/main\/NHL_players_analyst<\/a><\/p>\n<p><strong>P.S. \u042d\u0442\u043e \u043c\u043e\u044f \u043f\u0435\u0440\u0432\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430, \u043f\u0440\u043e\u0441\u044c\u0431\u0430, \u043d\u0435 \u0441\u0443\u0434\u0438\u0442\u044c \u0441\u0442\u0440\u043e\u0433\u043e. \u0412\u0441\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0438 \u0438 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u044f \u0441\u0442\u0440\u043e\u0433\u043e \u043f\u0440\u0438\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0442\u0441\u044f:)<\/strong><\/p>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><!----><!----><\/div>\n<p><!----><!----><br \/> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/825542\/\"> https:\/\/habr.com\/ru\/articles\/825542\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><!--[--><!--]--><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u0412 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0442 \u044d\u043a\u0441\u043f\u0435\u0440\u0442\u043e\u0432 \u0438 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0425\u043e\u043a\u043a\u0435\u0439\u043d\u043e\u0439 \u041b\u0438\u0433\u0438 (NHL) \u0432\u0441\u0435 \u0447\u0430\u0449\u0435 \u0441\u043b\u044b\u0448\u0438\u0448\u044c \u0442\u0435\u0437\u0438\u0441 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043b\u0438\u0433\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043c\u043e\u043b\u043e\u0436\u0435 \u0438 \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f \u0443\u043a\u043b\u043e\u043d \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0431\u043e\u043b\u0435\u0435 \u043d\u0438\u0437\u043a\u0438\u0445 \u0438 \u043b\u0435\u0433\u043a\u043e\u0432\u0435\u0441\u043d\u044b\u0445, \u043d\u043e \u044e\u0440\u043a\u0438\u0445 \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u043e\u0432. \u0425\u043e\u043a\u043a\u0435\u0439 \u0441 \u0435\u0433\u043e \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u043c\u0438 \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u0430\u043c\u0438 \u0443\u0445\u043e\u0434\u0438\u0442 \u0432 \u043f\u0440\u043e\u0448\u043b\u043e\u0435, \u0430 \u0433\u0430\u0431\u0430\u0440\u0438\u0442\u044b \u0442\u0430\u043a\u0438\u0445 &#171;\u0433\u0438\u0433\u0430\u043d\u0442\u043e\u0432&#187;, \u043a\u0430\u043a \u043d\u0430\u043f\u0430\u0434\u0430\u044e\u0449\u0438\u0439 New York Ranger Matt Rempe \u0441 \u0435\u0433\u043e \u0440\u043e\u0441\u0442\u043e\u043c 200 \u0441\u043c \u0438 \u0432\u0435\u0441\u043e\u043c 109 \u043a\u0433 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u0435\u0442\u0441\u044f \u0431\u043e\u043b\u044c\u0448\u0435, \u0447\u0435\u043c \u0441\u0430\u043c\u0430 \u0438\u0433\u0440\u0430 \u0445\u043e\u043a\u043a\u0435\u0438\u0441\u0442\u0430.<\/p>\n<p>\u042f \u0432\u0437\u044f\u043b \u0441 \u0441\u0430\u0439\u0442\u0430 <a href=\"https:\/\/www.nhl.com\/stats\/\" rel=\"noopener noreferrer nofollow\">NHL<\/a>  \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0445 10 \u0441\u0435\u0437\u043e\u043d\u0430\u0445 \u043f\u043e \u0438\u0433\u0440\u043e\u043a\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0432\u0435\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 10 \u043c\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0435\u0437\u043e\u043d\u0435.<\/p>\n<p><strong>\u041f\u0440\u043e\u0430\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u0435\u043c \u044d\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043b\u0438 \u043b\u0438\u0433\u0430 \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f \u043c\u043e\u043b\u043e\u0436\u0435, \u0430 \u0438\u0433\u0440\u043e\u043a\u0438 \u0441\u0442\u0430\u043d\u043e\u0432\u044f\u0442\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0435 \u0438 \u043b\u0435\u0433\u0447\u0435<\/strong><\/p>\n<h2>\u0414\u0430\u043d\u043d\u044b\u0435<\/h2>\n<p>\u0423 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0444\u0430\u0439\u043b\u044b \u0441 \u0434\u0430\u0442\u0430\u0441\u0435\u0442\u0430\u043c\u0438 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u0438\u0433\u0440\u043e\u043a\u0430\u043c, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u044b\u0433\u0440\u0430\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 10 \u043c\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0435\u0437\u043e\u043d\u0435 NHL, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u044b\u0433\u0440\u0430\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0435 10 \u043c\u0430\u0442\u0447\u0435\u0439 \u0432 \u0441\u0435\u0437\u043e\u043d\u0435, \u0432\u0437\u044f\u0442\u044b\u0435 \u0441 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0430\u0439\u0442\u0430 <a href=\"https:\/\/www.nhl.com\/stats\/skaters\" rel=\"noopener noreferrer nofollow\">\u041d\u0430\u0446\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0445\u043e\u043a\u043a\u0435\u0439\u043d\u043e\u0439 \u043b\u0438\u0433\u0438<\/a>. \u041e\u0441\u0442\u0430\u0432\u0438\u043c \u0441\u0442\u043e\u043b\u0431\u0446\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0442: <em>\u041f\u043e\u0437\u0438\u0446\u0438\u044f, \u0414\u0430\u0442\u0430 \u0440\u043e\u0436\u0434\u0435\u043d\u0438\u044f, \u0420\u043e\u0441\u0442 \u0432 \u0434\u044e\u0439\u043c\u0430\u0445, \u0412\u0435\u0441 \u0432 \u0444\u0443\u043d\u0442\u0430\u0445, \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u044b\u0433\u0440\u0430\u043d\u043d\u044b\u0445 \u043c\u0430\u0442\u0447\u0435\u0439, \u0441\u0435\u0437\u043e\u043d, 1-\u0439 \u0441\u0435\u0437\u043e\u043d \u0438\u0433\u0440\u043e\u043a\u0430.<\/em><\/p>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 5 \u0441\u043b\u0443\u0447\u0430\u0439\u043d\u044b\u0445 \u0441\u0442\u0440\u043e\u043a<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<\/th>\n<th>\n<p>Pos<\/p>\n<\/th>\n<th data-colwidth=\"108\" width=\"108\">\n<p>DOB<\/p>\n<\/th>\n<th>\n<p>Ht<\/p>\n<\/th>\n<th>\n<p>Wt<\/p>\n<\/th>\n<th>\n<p>GP<\/p>\n<\/th>\n<th>\n<p>season<\/p>\n<\/th>\n<th>\n<p>1st Season<\/p>\n<\/th>\n<\/tr>\n<tr>\n<th>\n<p>279<\/p>\n<\/th>\n<td>\n<p align=\"left\">D<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1983-06-08<\/p>\n<\/td>\n<td>\n<p align=\"left\">71<\/p>\n<\/td>\n<td>\n<p align=\"left\">180<\/p>\n<\/td>\n<td>\n<p align=\"left\">43<\/p>\n<\/td>\n<td>\n<p align=\"left\">2014-2015<\/p>\n<\/td>\n<td>\n<p align=\"left\">20062007<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>853<\/p>\n<\/th>\n<td>\n<p align=\"left\">C<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1987-08-07<\/p>\n<\/td>\n<td>\n<p align=\"left\">71<\/p>\n<\/td>\n<td>\n<p align=\"left\">200<\/p>\n<\/td>\n<td>\n<p align=\"left\">80<\/p>\n<\/td>\n<td>\n<p align=\"left\">2015-2016<\/p>\n<\/td>\n<td>\n<p align=\"left\">20052006<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>4411<\/p>\n<\/th>\n<td>\n<p align=\"left\">C<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1988-04-29<\/p>\n<\/td>\n<td>\n<p align=\"left\">74<\/p>\n<\/td>\n<td>\n<p align=\"left\">201<\/p>\n<\/td>\n<td>\n<p align=\"left\">70<\/p>\n<\/td>\n<td>\n<p align=\"left\">2019-2020<\/p>\n<\/td>\n<td>\n<p align=\"left\">20072008<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>1935<\/p>\n<\/th>\n<td>\n<p align=\"left\">C<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1991-02-22<\/p>\n<\/td>\n<td>\n<p align=\"left\">75<\/p>\n<\/td>\n<td>\n<p align=\"left\">200<\/p>\n<\/td>\n<td>\n<p align=\"left\">19<\/p>\n<\/td>\n<td>\n<p align=\"left\">2016-2017<\/p>\n<\/td>\n<td>\n<p align=\"left\">20142015<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>5379<\/p>\n<\/th>\n<td>\n<p align=\"left\">D<\/p>\n<\/td>\n<td data-colwidth=\"108\" width=\"108\">\n<p align=\"left\">1994-07-25<\/p>\n<\/td>\n<td>\n<p align=\"left\">72<\/p>\n<\/td>\n<td>\n<p align=\"left\">181<\/p>\n<\/td>\n<td>\n<p align=\"left\">57<\/p>\n<\/td>\n<td>\n<p align=\"left\">2021-2022<\/p>\n<\/td>\n<td>\n<p align=\"left\">20132014<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h2>\u041e\u043f\u0438\u0441\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430<\/h2>\n<p>\u0420\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u0435\u043c \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 (\u0441\u0440\u0435\u0434\u043d\u0435\u0435, \u043c\u0435\u0434\u0438\u0430\u043d\u0430, \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u0438\u0435) \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u043a\u0430\u0436\u0434\u043e\u043c\u0443 \u0441\u0435\u0437\u043e\u043d\u0443.<\/p>\n<pre><code># \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u0430 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 def calculate_statistics(data, season, column):     stats = data.groupby(season)[column].agg(['mean', 'median', 'std'])     return stats  # \u0420\u0430\u0441\u0447\u0435\u0442 \u0441\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0435\u0439 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 age_stats = calculate_statistics(data,'season', 'age') height_stats = calculate_statistics(data,'season', 'Ht') weight_stats = calculate_statistics(data,'season', 'Wt') height_stats_cm = calculate_statistics(data,'season', 'Ht_cm') weight_stats_kg = calculate_statistics(data,'season', 'Wt_kg')   # \u0412\u044b\u0432\u043e\u0434 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u043e\u0432 print(\"\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430:\") print(age_stats) print(\"\\n\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0440\u043e\u0441\u0442\u0430:\") print(height_stats_cm) print(\"\\n\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u0435\u0441\u0430:\") print(weight_stats_kg)<\/code><\/pre>\n<p>\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430:<br \/> mean  median       std<br \/> season<br \/> 2014-2015  27.865753    27.0  4.548903<br \/> 2015-2016  27.573370    27.0  4.436711<br \/> 2016-2017  27.427989    27.0  4.430596<br \/> 2017-2018  27.362319    27.0  4.341212<br \/> 2018-2019  27.212516    27.0  4.090101<br \/> 2019-2020  27.463315    27.0  4.105912<br \/> 2020-2021  27.575549    27.0  4.110550<br \/> 2021-2022  27.683168    27.0  4.212581<br \/> 2022-2023  28.000000    28.0  4.081955<br \/> 2023-2024  28.239637    28.0  4.213909<\/p>\n<p>\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0440\u043e\u0441\u0442\u0430:<br \/> mean  median       std<br \/> season<br \/> 2014-2015  185.649315   185.0  5.279594<br \/> 2015-2016  185.884511   185.0  5.330337<br \/> 2016-2017  185.705163   185.0  5.273089<br \/> 2017-2018  185.566535   185.0  5.272569<br \/> 2018-2019  185.674055   185.0  5.215526<br \/> 2019-2020  185.710598   185.0  5.318094<br \/> 2020-2021  185.901099   185.0  5.359289<br \/> 2021-2022  185.923267   185.0  5.485504<br \/> 2022-2023  186.042636   185.0  5.443297<br \/> 2023-2024  185.879534   185.0  5.565527<\/p>\n<p>\u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0434\u043b\u044f \u0432\u0435\u0441\u0430:<br \/> mean  median       std<br \/> season<br \/> 2014-2015  92.153096   92.08  6.704483<br \/> 2015-2016  92.150014   92.08  6.875161<br \/> 2016-2017  91.576182   91.17  6.844911<br \/> 2017-2018  91.259802   90.72  6.806483<br \/> 2018-2019  91.076063   90.72  6.912537<br \/> 2019-2020  90.994918   90.72  7.004026<br \/> 2020-2021  90.877074   90.72  6.756815<br \/> 2021-2022  90.740681   90.72  6.973008<br \/> 2022-2023  90.836021   90.72  6.884751<br \/> 2023-2024  90.535557   90.72  7.058457<\/p>\n<p>\u0412\u0438\u0437\u0443\u0430\u043b\u044c\u043d\u043e \u043a\u0430\u043a\u0438\u0445-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0439 \u043d\u0435 \u0432\u0438\u0434\u043d\u043e, \u0434\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043d\u0430 \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c\u044b \u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u0438 \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u0435\u0439 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u044f<\/p>\n<h2>\u0412\u0438\u0437\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445<\/h2>\n<pre><code># \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0437\u043e\u043d\u044b seasons = data['season'].unique()  # \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0441\u0442\u0440\u043e\u043a \u0438 \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u0434\u043b\u044f \u0441\u0443\u0431\u043f\u043b\u043e\u0442\u043e\u0432 nrows = 5 ncols = 2  # \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c \u0441 \u043a\u0440\u0438\u0432\u044b\u043c\u0438 \u043f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u0438 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c def plot_histograms_with_density(column, title, xlabel):     fig, axes = plt.subplots(nrows=nrows, ncols=ncols, figsize=(15, 30))     fig.suptitle(title, fontsize=20)     axes = axes.flatten()     for i, season in enumerate(seasons):         season_data = data[data['season'] == season][column].to_numpy()         if column == 'Wt':             bins = int(((np.max(season_data) - np.min(season_data)))\/\/4)         else:             bins = int((np.max(season_data) - np.min(season_data))) +1         axes[i].hist(season_data,                       bins=bins, density = False,                       range = [np.round(np.min(season_data)).astype(int), np.round(np.max(season_data).astype(int)+1)])         axes[i].set_title(season)         axes[i].set_xlabel(xlabel)     plt.tight_layout(rect=[0.03, 0.03, 1, 0.95])     plt.subplots_adjust(top=0.95)     plt.show()         # Draw the density plot     plt.figure(figsize=(12, 8))     sns.set(style=\"whitegrid\")     for season in seasons:         season_data = data[data['season'] == season][column]         season_data.plot.density(ind = np.arange(min(season_data), max(season_data)+1))          # Plot formatting     plt.legend(seasons)     plt.title('Density Plot, '+ column)     plt.xlabel(xlabel)     plt.ylabel('Density')     plt.show()      # \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0433\u0438\u0441\u0442\u043e\u0433\u0440\u0430\u043c\u043c \u0441 \u043a\u0440\u0438\u0432\u044b\u043c\u0438 \u043f\u043b\u043e\u0442\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 plot_histograms_with_density('age', '\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0412\u043e\u0437\u0440\u0430\u0441\u0442') plot_histograms_with_density('Ht', '\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0440\u043e\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0420\u043e\u0441\u0442 (\u0434\u044e\u0439\u043c)') plot_histograms_with_density('Wt', '\u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0412\u0435\u0441 (\u0444\u0443\u043d\u0442)')<\/code><\/pre>\n<figure class=\"full-width\"><\/figure>\n<figure class=\"full-width\"><\/figure>\n<hr\/>\n<figure class=\"full-width\"><\/figure>\n<figure class=\"full-width\"><\/figure>\n<figure class=\"full-width\"><\/figure>\n<figure class=\"full-width\"><\/figure>\n<p>\u041f\u043e \u0433\u0440\u0430\u0444\u0438\u043a\u0430\u043c \u0442\u043e\u0436\u0435 \u0441\u043b\u043e\u0436\u043d\u043e \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0432\u044b\u0432\u043e\u0434\u044b, \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043a \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u043e\u043c\u0443 \u0430\u043d\u0430\u043b\u0438\u0437\u0443<\/p>\n<h2>\u0420\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432<\/h2>\n<p>\u041f\u0440\u0438\u043c\u0435\u043d\u044f\u044f \u041b\u0438\u043d\u0435\u0439\u043d\u0443\u044e \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044e, \u043f\u043e\u0441\u0442\u0440\u043e\u0438\u043c \u0433\u0440\u0430\u0444\u0438\u043a \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432 \u0438 \u0442\u0440\u0435\u043d\u0434\u043e\u0432\u043e\u0439 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u043e\u0439 \u043b\u0438\u043d\u0438\u0438 \u0434\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u0440\u0438\u0437\u043d\u0430\u043a\u0430. \u0414\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043b\u0438\u043d\u0435\u0439\u043d\u043e\u0439 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u0441\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u043e\u0437\u0440\u0430\u0441\u0442 \u0438\u0433\u0440\u043e\u043a\u043e\u0432) \u0431\u044b\u043b\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e. <\/p>\n<p>\u0412\u0430\u0436\u043d\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u0441\u0442\u0430\u0442\u043a\u0438 (\u043e\u0448\u0438\u0431\u043a\u0438 \u043f\u0440\u0435\u0434\u0441\u043a\u0430\u0437\u0430\u043d\u0438\u044f \u043c\u043e\u0434\u0435\u043b\u0438) \u0431\u044b\u043b\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b. \u0420\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432 \u043c\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f <code>QQ-\u043f\u043b\u043e\u0442\u0430<\/code> \u0438 \u0442\u0435\u0441\u0442\u0430 <code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a\u0430<\/code><\/p>\n<pre><code># \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432 def regresion_model(stats):     # \u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043b\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438     X = stats.index.values.reshape(-1, 1)     y_mean = stats['mean'].values     # \u041b\u0438\u043d\u0435\u0439\u043d\u0430\u044f \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u044f     model = LinearRegression()     model.fit(X, y_mean)     trend_line = model.predict(X)     return trend_line, model. intercept_ , model. coef_[0]  # \u0424\u0443\u043d\u043a\u0446\u0438\u044f \u0434\u043b\u044f \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u043e\u0432 \u0438 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u043e\u043d\u043d\u043e\u0439 \u043b\u0438\u043d\u0438\u0438 def plot_trend_with_regression(stats, title, ylabel):          y_mean = stats['mean'].values     std_dev = stats['std'].values     trend_line, _, _ = regresion_model(stats)     residuals = y_mean - trend_line     # \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u0430     plt.figure(figsize=(12, 8))     sns.set(style=\"whitegrid\")     plt.plot(stats.index.to_numpy(), y_mean, marker='o', label='\u0421\u0440\u0435\u0434\u043d\u0435\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435')     plt.plot(stats.index.to_numpy(), trend_line, color='red', label='\u0422\u0440\u0435\u043d\u0434\u043e\u0432\u0430\u044f \u043b\u0438\u043d\u0438\u044f')     plt.fill_between(stats.index, stats['mean'] - stats['std'], stats['mean'] + stats['std'], color='gray', alpha=0.2, label='\u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0435 \u043e\u0442\u043a\u043b\u043e\u043d\u0435\u043d\u0438\u0435')     for i in range(len(stats)):         plt.annotate(f'{y_mean[i]:.2f}', (stats.index.to_numpy()[i], y_mean[i]),                       textcoords=\"offset points\", xytext=(0,10), ha='center')         plt.annotate(f'\u00b1{std_dev[i]:.2f}', (stats.index.to_numpy()[i], y_mean[i] - std_dev[i]),                       textcoords=\"offset points\", xytext=(0,-10), ha='center', color='blue')     plt.title(title, fontsize=20)     plt.xlabel('\u0421\u0435\u0437\u043e\u043d', fontsize=15)     plt.ylabel(ylabel, fontsize=15)     plt.legend()     plt.show()          # \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432     sm.qqplot(residuals, line ='45')     plt.title('QQ-\u043f\u043b\u043e\u0442 \u043e\u0441\u0442\u0430\u0442\u043a\u043e\u0432')     plt.show()              stat, p_value = shapiro(residuals)     print(f'\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430={stat}, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435={p_value}')     if p_value > 0.05:         print('\u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e')     else:         print('\u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u043d\u0435 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e')   age_stats = calculate_statistics(data, 'season_numeric', 'age') height_stats = calculate_statistics(data,'season_numeric', 'Ht') weight_stats = calculate_statistics(data, 'season_numeric', 'Wt') # \u041f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u0435 \u0433\u0440\u0430\u0444\u0438\u043a\u043e\u0432 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 plot_trend_with_regression(age_stats, '\u0422\u0440\u0435\u043d\u0434 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '') plot_trend_with_regression(height_stats, '\u0422\u0440\u0435\u043d\u0434 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0440\u043e\u0441\u0442\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0420\u043e\u0441\u0442 (\u0434\u044e\u0439\u043c\u044b)') plot_trend_with_regression(weight_stats, '\u0422\u0440\u0435\u043d\u0434 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0440\u0435\u0434\u043d\u0435\u0433\u043e \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432 \u043f\u043e \u0441\u0435\u0437\u043e\u043d\u0430\u043c', '\u0412\u0435\u0441 (\u0444\u0443\u043d\u0442\u044b)')<\/code><\/pre>\n<figure class=\"full-width\"><\/figure>\n<figure class=\"\"><\/figure>\n<p><code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a<\/code> \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430=<strong>0.9729418158531189<\/strong>, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435=<strong>0.9166999459266663<\/strong> \u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b <strong><em>\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e<\/em><\/strong>  <\/p>\n<figure class=\"full-width\"><\/figure>\n<figure class=\"\"><\/figure>\n<p><code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a<\/code> \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430=<strong>0.933466374874115<\/strong>, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435=<strong>0.48284029960632324<\/strong> \u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b <strong><em>\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e<\/em><\/strong>  <\/p>\n<figure class=\"full-width\"><\/figure>\n<figure class=\"\"><\/figure>\n<p><code>\u0428\u0430\u043f\u0438\u0440\u043e-\u0423\u0438\u043b\u043a<\/code> \u0442\u0435\u0441\u0442: \u0421\u0442\u0430\u0442\u0438\u0441\u0442\u0438\u043a\u0430=<strong>0.9445896148681641<\/strong>, p-\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435=<strong>0.6051148176193237<\/strong> \u041e\u0441\u0442\u0430\u0442\u043a\u0438 \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b <strong><em>\u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e<\/em><\/strong>  <\/p>\n<p>\u041c\u044b \u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u043f\u0440\u0438\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0442\u0440\u0435\u043d\u0434 \u043d\u0430 \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 \u0432\u0435\u0441\u0430 \u0438\u0433\u0440\u043e\u043a\u043e\u0432, \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0442\u0440\u0435\u043d\u0434 \u0440\u043e\u0441\u0442\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f, \u0430 \u0442\u0440\u0435\u043d\u0434 \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430 \u0434\u0430\u0436\u0435 \u0438\u0434\u0435\u0442 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0432\u0432\u0435\u0440\u0445.<\/p>\n<h2>\u0410\u043d\u0430\u043b\u0438\u0437 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438. \u0422\u0435\u0441\u0442 \u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430<\/h2>\n<p>\u0414\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u043d\u0434\u0430 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0422\u0435\u0441\u0442 <a href=\"https:\/\/doi.org\/10.21105\/joss.01556\" rel=\"noopener noreferrer nofollow\">\u041c\u0430\u043d\u043d\u0430-\u041a\u0435\u043d\u0434\u0430\u043b\u043b\u0430<\/a>. \u041e\u043d \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u043e\u0449\u043d\u044b\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u043c \u0434\u043b\u044f \u0432\u044b\u044f\u0432\u043b\u0435\u043d\u0438\u044f \u0442\u0440\u0435\u043d\u0434\u043e\u0432 \u0432\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0445 \u0440\u044f\u0434\u0430\u0445, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u043a\u043e\u0433\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435 \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u044b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e. <\/p>\n<pre><code>features = ['age', 'Ht', 'Wt'] result = [] for column in features:     MK = mk. original_test (data.groupby('season')[column].agg('mean'))     stats = calculate_statistics(data, 'season_numeric', column)     _, x0, x = regresion_model(stats)     stats = [MK.p, MK.trend, x0,x, 10*x, MK.Tau]     result.append(stats)<\/code><\/pre>\n<p>\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0432\u0437\u0433\u043b\u044f\u043d\u0435\u043c \u043d\u0430 \u043f\u043e\u043a\u0430\u0437\u0430\u0442\u0435\u043b\u0438 \u0440\u0435\u0433\u0440\u0435\u0441\u0441\u0438\u0438 \u0434\u043b\u044f \u0432\u043e\u0437\u0440\u0430\u0441\u0442\u0430, \u0440\u043e\u0441\u0442\u0430 \u0438 \u0432\u0435\u0441\u0430 \u0437\u0430 \u0441\u0435\u0437\u043e\u043d\u044b &#171;2014-2015&#187; &#8212; &#171;2023-2024&#187;  <\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<\/th>\n<th>\n<p>p-value<\/p>\n<\/th>\n<th>\n<p>regression<\/p>\n<\/th>\n<th>\n<p>slope<\/p>\n<\/th>\n<th>\n<p>intercept<\/p>\n<\/th>\n<th>\n<p>effect<\/p>\n<\/th>\n<th>\n<p>Tau<\/p>\n<\/th>\n<\/tr>\n<tr>\n<th>\n<p>Age<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.152406<\/p>\n<\/td>\n<td>\n<p align=\"left\">no trend<\/p>\n<\/td>\n<td>\n<p align=\"left\">-76.611793<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.051623<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.516228<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.377778<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>Height<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.107405<\/p>\n<\/td>\n<td>\n<p align=\"left\">no trend<\/p>\n<\/td>\n<td>\n<p align=\"left\">49.991625<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.011496<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.114960<\/p>\n<\/td>\n<td>\n<p align=\"left\">0.422222<\/p>\n<\/td>\n<\/tr>\n<tr>\n<th>\n<p>Weight<\/p>\n<\/th>\n<td>\n<p align=\"left\">0.000172<\/p>\n<\/td>\n<td>\n<p align=\"left\">decreasing<\/p>\n<\/td>\n<td>\n<p align=\"left\">987.935300<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.389616<\/p>\n<\/td>\n<td>\n<p align=\"left\">-3.896159<\/p>\n<\/td>\n<td>\n<p align=\"left\">-0.955556<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0433\u0434\u0435: <\/p>\n<ul>\n<li>\n<p><code>p-val<\/code><\/p>\n<\/li>\n<\/ul>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-400027","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/400027","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=400027"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/400027\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=400027"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=400027"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=400027"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}