diff --git a/analytics/README.md b/analytics/README.md index 2779648..b08d0de 100644 --- a/analytics/README.md +++ b/analytics/README.md @@ -4,6 +4,30 @@ - Расчет лидерства студента на основе его активности и правильности ответов. - Управление данными студентов и их аналитикой через API. +### Расчёты +Оценка аналитичности за тест получается способом нормировки: +

+ 𝑎𝑛𝑎𝑙𝑦𝑡𝑖𝑐𝑖𝑡𝑦 = 𝑀/𝑃 × 100, +

+ +где `M` это максимальный балл за тест, а `P` количество баллов, набранное студентом. + +Расчет аналитичности за курс происходит по формуле робастного среднего: +

+ 𝑅𝑀 = 𝑚𝑒𝑑(𝑋), +

+ +где `X` это вектор оценок по всем тестам курса. + +Оценка лидерских качеств за тест получается с помощью формулы робастного коэфициента вариации: + +

+ 𝑅𝐶𝑉 = 𝐼𝑄𝑅/𝑚𝑒𝑑(𝑋), +

+ +Для расчета `RCV` за тест для его автора, собираются данные о том, какие ответы дали другие студенты на его тест по пройденной лекции. `X` это вектор, который состоит из долей правильных ответов на каждый вопрос, a `IQR` - его межквартильный размах. + + ### Установка 1. Склонируйте репозиторий: `git clone https://github.com/your/repository.git` 2. Установите зависимости: `pip install -r requirements.txt` diff --git a/analytics/project/settings.py b/analytics/project/settings.py index 1ce2266..81eb75c 100644 --- a/analytics/project/settings.py +++ b/analytics/project/settings.py @@ -15,7 +15,6 @@ # Build paths inside the project like this: BASE_DIR / 'subdir'. BASE_DIR = Path(__file__).resolve().parent.parent - SECRET_KEY = config('SECRET_KEY') DEBUG = config('DEBUG', default=False, cast=bool) ALLOWED_HOSTS = config('ALLOWED_HOSTS', default='127.0.0.1,localhost', cast=lambda v: [s.strip() for s in v.split(',')]) @@ -98,8 +97,8 @@ USE_TZ = True -STATIC_URL = 'static_django_analytics_files/' -STATIC_ROOT = BASE_DIR / 'static_django_analytics_files/static_django_analytics_files/' +STATIC_URL = 'static_django_analytics/' +STATIC_ROOT = BASE_DIR / 'static_django_analytics/static_django_analytics/' REST_FRAMEWORK = { 'DEFAULT_SCHEMA_CLASS': 'drf_spectacular.openapi.AutoSchema', @@ -111,3 +110,7 @@ 'DESCRIPTION': 'API for Student Analytics', 'VERSION': '0.0.1', } + +CORS_ALLOWED_ORIGINS = [ + "http://87.249.49.46", +] \ No newline at end of file diff --git a/analytics/project/urls.py b/analytics/project/urls.py index 3f0c069..e8f06ae 100644 --- a/analytics/project/urls.py +++ b/analytics/project/urls.py @@ -4,7 +4,7 @@ from django.conf import settings urlpatterns = [ - path('api/', include('analytics.urls')), - path('api/schema/', SpectacularAPIView.as_view(), name='schema'), - path('api/docs/', SpectacularSwaggerView.as_view(url_name='schema'), name='docs'), + path('api/v1/', include('analytics.urls')), + path('schema/', SpectacularAPIView.as_view(), name='schema'), + path('swagger/', SpectacularSwaggerView.as_view(url_name='schema'), name='swagger'), ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) diff --git a/analytics/unitests/TestStudentAnalyticsAPI.py b/analytics/unittests/TestStudentAnalyticsAPI.py similarity index 100% rename from analytics/unitests/TestStudentAnalyticsAPI.py rename to analytics/unittests/TestStudentAnalyticsAPI.py diff --git a/analytics/unitests/TestStudentAnalyticsViewSet.py b/analytics/unittests/TestStudentAnalyticsViewSet.py similarity index 100% rename from analytics/unitests/TestStudentAnalyticsViewSet.py rename to analytics/unittests/TestStudentAnalyticsViewSet.py