<jupyter_start><jupyter_text>Лабораторная работа 3.2. Домашнее задание  Задание №1 Создайте два массива: в первом должны быть четные числа от 2 до 12 включительно, а в другом числа 7, 11, 15, 18, 23, 29. $1.$ Сложите массивы и возведите элементы получившегося массива в квадрат:<jupyter_code>import numpy as np
a = np.arange(2, 13, 2)
b = np.array([7, 11, 15, 18, 23, 29])
print(a)
print(b)<jupyter_output>[ 2  4  6  8 10 12]
[ 7 11 15 18 23 29]<jupyter_text>$2.$ Выведите все элементы из первого массива, индексы которых соответствуют индексам тех элементов второго массива, которые больше 12 и дают остаток 3 при делении на 5.<jupyter_code>loc = np.logical_and(b > 12, b % 5 == 3)
a[loc]<jupyter_output><empty_output><jupyter_text>*3.* Проверьте условие "Элементы первого массива делятся на 4, элементы второго массива меньше 14". (Подсказка: в результате должен получиться массив с True и False)<jupyter_code>log1 = a % 4 == 0
log2 = b < 14
print(log1 + log2)<jupyter_output>[ True  True False  True False  True]<jupyter_text>Задание №2 * Найдите интересный для вас датасет. Например, можно выбрать датасет тут. http://data.un.org/Explorer.aspx (выбираете датасет, жмете на view data, потом download, выбирайте csv формат)* Рассчитайте подходящие описательные статистики для признаков объектов в выбранном датасете* Проанализируйте и прокомментируйте содержательно получившиеся результаты* Все комментарии оформляйте строго в ячейках формата markdown     Ищем зависимость числа рождения от уровня грамотностиЧисло рождения - зависимая yУровень грамотности - независимая x<jupyter_code>import csv
import matplotlib.pyplot as plt
%matplotlib inline
# Данные формата Страна, Год, детей рождено, уровень грамотности
with open('Годовое число рождений.csv', 'r', newline='') as csvfile:
    data = csv.reader(csvfile, delimiter=',')
    birth = [["Country", "Year", "Value"]]
    for row in data:
        if row[5].isdigit():
            birth.append([row[1], int(row[5]), int(row[11])])
            
with open('Уровень грамотности взрослого населения.csv', 'r', newline='') as csvfile:
    data = csv.reader(csvfile, delimiter=',')
    literacy = [["Country", "First year", "Last year", "Value"]]
    for row in data:
        if row[11].isdigit():
            f_year, l_year = map(int, row[5].split('-'))
            literacy.append([row[1], f_year, l_year, int(row[11])])
            
data = [["Country", "Year", "Birth", "Literacy"]]
for row1 in birth:
    for row2 in literacy:
        if row1[0] == row2[0] and row1[1] >= row2[1] and row1[1] <= row2[2]:
            data.append([row1[0], int(row1[1]), int(row1[2]), int(row2[3])])
data = np.array(data)
birth = np.int_(np.array(data[1:, 2]))
literacy = np.int_(np.array(data[1:, 3]))
print(birth)
print(literacy)
plt.title('Число рождений от уровня грамотности', fontsize=20, fontname='Times New Roman')
plt.xlabel('Годовое число рождений', color='gray')
plt.ylabel('Уровень грамотности взрослого населения',color='gray')
plt.plot(birth, literacy, color="r", marker="*", linestyle="none")
print(f"Среднее значение годового числа рождения: {np.mean(birth)}")
print(f"Среднее значение уровеня грамотности взрослого населения: {np.mean(literacy)}")
print(f"Среднее отклонение годового числа рождения: {np.std(birth)}")
print(f"Среднее отклонение уровеня грамотности взрослого населения: {np.std(literacy)}")
print(f"Дисперсия годового числа рождения: {np.var(birth)}")
print(f"Дисперсия уровеня грамотности взрослого населения: {np.var(literacy)}")
print(f"Коэффициент парной корреляции:\n {np.corrcoef(literacy, birth)}")
plt.title('Число рождений от уровня грамотности', fontsize=20, fontname='Times New Roman')
plt.xlabel('Годовое число рождений', color='gray')
plt.ylabel('Уровень грамотности взрослого населения',color='gray')
A = np.vstack([birth, np.ones(len(birth))]).T
m, c = np.linalg.lstsq(A, literacy, rcond=None)[0]
plt.plot(birth, m*birth + c, 'b')
plt.plot(birth, literacy, color="r", marker="*", linestyle="none")<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.1379740518962076, 'fraction_numerical': 0.028942115768463075, 'mean_word_length': 5.343354430379747, 'pattern_counts': {'":': 0, '<': 17, '<?xml version=': 0, '>': 17, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 5, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '279215', 'license': 'MIT', 'n_tokens_mistral': 1685, 'n_tokens_neox': 1780, 'n_words': 403, 'path': 'solved notebooks/lab3.2hw.ipynb', 'repo_name': 'HAXF13D/TRO-lab2', 'size': '4008'}