Scientific journal
Modern high technologies
ISSN 1812-7320
"Перечень" ВАК
ИФ РИНЦ = 0,940

APPLICATION OF DIGITAL TECHNOLOGIES FOR CONSTRUCTING MATHEMATICAL MODELS FOR RESEARCHING SOCIAL AND ECONOMIC INDICATORS IN THE PROCESS OF TEACHING STUDENTS OF ECONOMIC SPECIALTIES

Bereznyak I.S. 1
1 Financial University under the Government of the Russian Federation
The scientific publication is devoted to the development of a methodology by which students studying economic specialties and who do not have sufficient programming skills had the opportunity to conduct research on macroeconomic indicators using the Python programming language. The purpose of the study is to create a step-by-step plan for analyzing macroeconomic indicators, which includes the necessary Python codes for constructing mathematical models of various economic processes and their further interpretation. The materials of this study are economic indicators provided by Rosstat and characterizing the development of the Russian economy. The research methods are economic and statistical methods, as well as program codes in the Python programming language. The work provides program codes and calls to specialized libraries that allow you to carry out the initial stage of the study, including the installation of all the libraries necessary for further work, converting the original data file into a data frame, displaying the downloaded data on the screen, calculating the main statistical characteristics, and ways to change the field type. The article considers codes for conducting a single-factor analysis, during which the strength of the relationship between features is estimated, a heat map is built, time series are checked for stationarity, time series models and pair regression equations are built. The final stage is the use of statistical libraries to build a multiple regression model. The article also presents codes that can be used to visualize the results for greater clarity. According to the proposed algorithm, using the presented codes, a study was conducted of a few macroeconomic indicators characterizing the development of the Russian economy in the period from 2005 to 2023. The factors that most strongly affect the gross domestic product were identified, time series were checked for stationarity, and pair and multiple regression equations were built.
big data processing
Python environment
heat map
correlation analysis
time series characteristics calculation
regression models

Введение

На современном этапе реализации основных положений национальной цели «Цифровая трансформация», которая утверждена Указом Президента РФ от 21 июля 2020 г. № 474 «О национальных целях развития Российской Федерации на период до 2030 г.» [1], в процессе полномасштабного перехода к цифровой экономике компетенции, связанные с грамотным использованием информационных технологий, становятся все более востребованными. В то же время студенты, обучающиеся на экономических специальностях, достаточно часто сталкиваются со сложностями, связанными с необходимостью всестороннего анализа различных статистических показателей с применением современных информационных технологий [2]. Сам процесс автоматизации построения различных моделей, расчет большого количества разнообразных показателей связан с необходимостью эффективной автоматизации рутинных расчетов с применением современных информационных технологий [3]. В связи с этим применение различных языков программирования, в частности Рython, поможет избежать вычислительных ошибок и существенно сократит время построения, а также повысит качество анализа различных математических моделей, описывающих те или иные социально-экономические процессы и явления. Выбор языка программирования Рython обусловлен, с одной стороны, его относительной простотой, с другой – наличием специализированных библиотек и фреймворков [4]. Стоит учесть, что для студентов непрофильных специальностей программирование зачастую является достаточно сложной задачей, поэтому наличие примерного поэтапного плана исследования экономических показателей с приведением основных кодов и объяснением полученных результатов, может оказаться весьма полезным навыком в свете необходимости приобретения актуальных цифровых компетенций [5, 6].

Целью исследования является разработка методики, которая позволила бы студентам, не владеющим навыками программирования, с одной стороны, приобрести актуальные цифровые компетенции, с другой – используя необходимые функции для построения временных рядов, выявления наличия различных форм связи между признаками, выбора наиболее адекватных моделей, описывающих парную и множественную связи, а также построение различных типов графиков и диаграмм, которые позволяют наглядно увидеть распределения значений признаков, их взаимосвязи, тенденции развития, наличие аномальных значений с использованием языка программирования Рython, проводить исследования макроэкономических показателей, что необходимо в процессе обучения студентов экономических специальностей.

Материалы и методы исследования

Многомерные временные ряды, составленные на основе данных Росстата, представленных на официальном сайте и представляющих собой ряд макроэкономических показателей, характеризующих некоторые аспекты развития экономики России в течение 19 последних лет (с 2005 по 2023 г.). Методы исследования включают в себя классические экономические и системные методы, которые дополнены применяемыми в среде программирования Рython специальными методами и алгоритмами многомерного анализа и статистического моделирования.

Результаты исследования и их обсуждение

Изучение трансформации во времени ряда экономических показателей ставит перед собой следующие основные задачи; изучение динамики анализируемых показателей и построение линий тренда, выявление взаимосвязей между показателями, оценка силы и направления этой связи, построение уравнений парной и множественной регрессии.

В эпоху цифровизации экономики одним из важнейших навыков становится не только знание и грамотное использование соответствующего математического аппарата, но и умение продуктивно использовать самые современные инструменты, позволяющие автоматизировать рутинные расчеты и существенно повышающие эффективность работы за счет снижения временных затрат и существенного уменьшения вычислительных ошибок. Языки программирования, в частности Python и различные специализированные библиотеки, позволяют всесторонне анализировать самые разнообразные экономические показатели на микро- и макроуровнях.

Для иллюстрации предлагаемого теоретического материала в качестве исследуемых экономических показателей рассмотрим ряд макроэкономических показателей [7, 8], один из которых (валовой внутренний продукт (ВВП), млрд руб.) будет выступать в качестве результативного признака (Y), а ряд других показателей, которые обозначим Xi и число которых может быть произвольным, в зависимости от поставленной задачи, выступают в качестве факторных признаков [9].

Таблица 1

Основные команды начального этапа исследования макроэкономических показателей

Код

Результат выполнения

i!pip install pandas numpy matplotlib seaborn statsmodels

Инсталляция всех необходимых для исследования библиотек, включая библиотеку построения статистических моделей

df = pd.read_excel(‘/content/drive/MyDrive/Название файла.xlsx’)

Создание датафрейма (имя может быть задано произвольно) из исходного файла Excel, содержащего значения анализируемых показателей

df.head()

df.info()

Вывод на экран нескольких (количество может быть указано в качестве аргумента) строк датафрейма и полной информации о датафрейме

df.describe()

Вывод на экран структурных средних и величины среднеквадратического отклонения

df[‘Имя столбца с временной компонентой’] = pd.to_datetime(df[‘Имя столбца с временной компонентой’])

Изменение типа столбца, содержащего даты (годы, месяцы и т.п.) на временной для возможности построения рядов динамики

Таблица 2

Основные команды однофакторного анализа макроэкономических показателей

Код

Результат выполнения

cplt.figure(figsize=(5, 10))

sns.heatmap(df.corr()[[‘Имя результативного столбца’]],vmin=-1, vmax=1, annot=True);

Построение тепловой карты (матрицы корреляции)

from statsmodels.tsa.stattools import adfuller

result = adfuller(df[‘Имя столбца’])

for key, value in result[4].items():

print(‘\t%s: %.3f’ % (key, value))

Применение теста Дики-Фуллера для возможности отнесения анализируемого временного ряда к стационарным

df[‘Имя столбца_без_тренда’] = df[‘Имя столбца’] – df[‘Имя столбца’].rolling(window=2).mean()

df[‘Имя столбца_стационарные’] = df[‘Имя столбца_без_тренда’].diff()

Дополнение датафрейма столбцами, в которых представлены данные показателя без тренда и приведенные к стационарному виду

from statsmodels.tsa.arima.model import ARIMA

modelvr = ARIMA(df[‘Имя столбца результативного показателя’], order=(1, 1, 1))

modelvr_fit = modelvr.fit()

print(modelvr_fit.summary())

Построение и обучение модели временных рядов ARIMA, вывод статистики построенной модели, включая уравнение тренда

import statsmodels.api as sm

y = df[‘Имя столбца результативного показателя’]

x = df[[‘Имя столбца выбранного факторного признака’]]

x = sm.add_constant (x)

model = sm. OLS (y, x). fit ()

print(model. summary ())

Построение уравнений регрессии результативного показателя с выбранными факторными признаками (построение парных регрессий, модель OLS() из библиотеки statsmodels) с выводом полной статистики построенной модели

На первом этапе исследования необходимо преобразовать наш исходный файл с данными, представляющий собой файл Excel, в датафрейм, предварительно импортировав необходимые для работы с датафреймами библиотеки и указав путь к файлу. Это осуществляется при помощи соответствующих кодов, выполнение которых приведет к созданию датафрейма, содержащего исходные статистические данные. Кроме этого, на начальном этапе целесообразно вывести загруженные данные на экран, чтобы убедиться в корректности их загрузки, рассчитать основные статистические характеристики по каждому показателю и, при необходимости, визуализировать изменения показателей, построив гистограммы или линейные графики. Коды, которые могут быть применены для проведения начального этапа исследования, и результаты их выполнения приведены в табл. 1.

Следующим этапом исследования является однофакторный анализ, предполагающий оценку силы связи между факторами, проверку временных рядов по каждому показателю на стационарность, построение временных рядов, устранение, при необходимости, сезонной компоненты и приведения их к стационарному виду. Коды, необходимые для осуществления этого этапа, приведены в табл. 2.

Заключительный этап исследования состоит в построении модели множественной регрессии, включающей в себя факторы, наиболее сильно связанные с результативным показателем, которые могут быть отобраны на основе анализа матрицы коэффициентов парных корреляций, полученной на предыдущем этапе.

y = df[‘Имя столбца результативного показателя’]

x = df[[‘Имя столбца факторного признака 1’,’Имя столбца факторного признака 2’,’Имя столбца факторного признака 3’,’Имя столбца факторного признака 4’,’Имя столбца факторного признака 5’]]

x = sm.add_constant(x)

model = sm.OLS(y, x).fit()

print(model.summary())

Сводка по построенной модели позволяет не только найти уравнение множественной регрессии, но и дает возможность оценить значимость как модели в целом, так и отдельных ее коэффициентов в нормальном и стандартизованном виде.

Следует помнить о том, что визуализация полученных результатов исследования может существенно улучшить его восприятие [10]. Представление, к примеру, матрицы корреляций в виде тепловой карты гораздо более наглядно в экономических исследованиях, чем привычная таблица. Кроме того, полученные графики и диаграммы могут быть импортированы в интерактивные отчеты и использоваться для оперативного анализа и оценки эффективности компании. Библиотеки визуализации Python представляют широкие возможности построения разнообразных графиков, как простых, так и достаточно сложных. В табл. 3 представлены основные коды, позволяющие строить различные типы графиков.

Таблица 3

Основные команды для визуализации исследуемых показателей

Код

Результат выполнения

df[‘Имя столбца’].hist(color=’purple’)

Построение гистограммы распределения по выбранному столбцу

plt.figure(figsize=(25,2))

sns.boxplot(df[‘Имя столбца’],fliersize=10, color=’purple’)

Построение “ящика с усами” для выявления выбросов

sns.color_palette()

Возможность выбора цвета из палитры

px.histogram(df, x=’Имя столбца 1’, color=’Имя столбца 2’)

Построение совмещенной гистограммы по двум столбцам

plt.plot(df[‘Временная переменная’], df[‘Имя столбца’])

plt.title(‘Название диаграммы’)

plt.xlabel(‘Временная переменная’)

plt.ylabel(‘Имя столбца’)

plt.show()

Построение графика по точкам с подписями осей и выводом названия графика

import plotly.express as px

px.scatter(df, x=’TИмя столбца 1’,y=’Имя столбца 2’,size=’Имя столбца 3’,hover_name=»Имя столбца 4»,

size_max=60, color=’Имя столбца 5’, facet_col=’Имя столбца 6’, log_x=True)

Построение пузырьковой диаграммы для совместного анализа нескольких признаков

По рассмотренному алгоритму было проведено исследование зависимости одного из самых важных показателей – ВВП от ряда показателей, характеризующих занятость населения, уровень доходов и инвестиционных вложений, оборот малого и среднего бизнеса, число работников, занятых в этой сфере. Таким образом, было проведено исследование зависимости результативного показателя от пяти факторных признаков. Была построена тепловая карта, проведена оценка силы связи показателя ВВП с каждым из факторных признаков, показано, что практически все факторы, за исключением численности занятых в РФ и оборота малых и средних предприятий, существенно влияют на величину ВВП (значения коэффициентов корреляции остальных факторных признаков варьируются от 0,78 до 0,98) Анализ временных рядов на стационарность показал, что все ряды, кроме уровня доходов, являются стационарными. Нестационарный ряд был дополнен столбцами, в которых были удалены сезонные компоненты и непосредственно тренд. Для каждого факторного признака, имеющего сильную корреляционную связь с результативным показателем, были построены уравнения регрессии, а также получено уравнение множественной регрессии, включающее три из первоначально рассматриваемых пяти факторных признаков.

Заключение

Описанная методика последовательного анализа макроэкономических показателей и оценка их взаимосвязи и взаимовлияния позволит студентам, обучающимся на экономических специальностях, освоить не только новый инструмент – язык программирования Рython, что и позволит проводить исследования на более высоком профессиональном уровне, что особенно актуально в свете реализации национальной цели «Цифровая трансформация». С помощью предложенного алгоритма студенты смогут провести начальный этап исследования, инсталлировать все необходимые для работы библиотеки, загрузить данные, рассчитать статистические характеристики, при необходимости изменить тип загруженных данных, провести однофакторный анализ, исследовав как отдельные факторы, так и их взаимную связь, построить уравнения множественной регрессии. Полученные результаты исследования могут быть дополнительно визуализированы, что существенно повысит качество анализа и сделает его более наглядным. Все предложенные этапы анализа были апробированы в ходе исследования показателей, характеризующих развитие экономики России в период с 2005 по 2023 г. Выявлены факторы, оказывающие наиболее сильное влияние на ВВП, проведена проверка временных рядов на стационарность, построены уравнения парной и множественной регрессий. Предложенный план анализа макроэкономических показателей позволит студентам перейти на более современный уровень исследования, способствует формированию новых цифровых компетенций и повышению уровня цифровой зрелости будущих специалистов.