Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Функції Створення для Одномірних Масивів | Основи NumPy
Ultimate NumPy

bookФункції Створення для Одномірних Масивів

Окрім базового створення масиву шляхом явного зазначення елементів, numpy також дозволяє автоматичне створення масивів за допомогою спеціальних функцій. Ось дві з найпоширеніших функцій для створення винятково одномірних масивів:

  • arange();
  • linspace().

arange()

Функція numpy.arange() подібна до вбудованої функції Python range(), однак повертає об'єкт типу ndarray. По суті, вона створює масив з рівномірно розташованими елементами у заданому інтервалі.

Наприклад, якщо інтервал задано від 0 до 10 з кроком 2, результатом буде масив: [0, 2, 4, 6, 8].

Нижче наведено три найважливіші параметри цієї функції та їх призначення:

  1. start:

    • Значення за замовчуванням: 0;
    • Визначає перший елемент масиву.
  2. stop:

    • Значення за замовчуванням відсутнє;
    • Визначає кінцеву межу, яка не включається до масиву.
  3. step:

    • Значення за замовчуванням: 1;
    • Вказує крок між елементами масиву.
12345678910
import numpy as np # Creating an array of integers from 0 to 11 exclusive with step=1 array_1 = np.arange(11) print(array_1) # Creating an array of integers from 1 to 11 exclusive with step=1 array_2 = np.arange(1, 11) print(array_2) # Creating an array of integers from 0 to 11 exclusive with step=2 array_3 = np.arange(0, 11, 2) print(array_3)
copy

linspace()

Хоча arange() може працювати з дійсними числами, для цієї мети рекомендується використовувати numpy.linspace() замість numpy.arange(), оскільки arange() може давати неочікувані результати через помилки точності з плаваючою комою при обчисленні кроків. На відміну від цього, linspace() генерує певну кількість рівновіддалених точок у заданому інтервалі, що забезпечує точність і послідовність.

У linspace() замість параметра step використовується параметр num, який визначає кількість вибірок (чисел) у заданому інтервалі (за замовчуванням — 50).

1234567
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_1 = np.linspace(0, 1, 5) print('Example 1:', array_1) # Generating 7 equally spaced values between -1 and 1 (inclusive) array_2 = np.linspace(-1, 1, 7) print('Example 2:', array_2)
copy

Endpoint

Параметр endpoint визначає, чи буде значення stop включено. За замовчуванням він дорівнює True (включно). Якщо встановити його у False, значення stop буде виключено, що трохи зменшує розмір кроку.

Нижче наведено порівняння array_inclusive та array_exclusive:

1234567
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_inclusive = np.linspace(0, 1, 5) print('Endpoint = True:', array_inclusive) # Generating 5 equally spaced values between 0 and 1 (exclusive) array_exclusive = np.linspace(0, 1, 5, endpoint=False) print('Endpoint = False:', array_exclusive)
copy

Якщо endpoint=True, інтервал [0,1][0, 1] ділиться на 4 рівні відрізки та включає сам кінцевий елемент (1), що дає крок (10)/4=0.25(1 - 0) / 4 = 0.25.

Якщо endpoint=False, інтервал [0,1)[0, 1) ділиться на 5 рівних відрізків, оскільки кінцевий елемент виключено, що дає крок (10)/5=0.2(1 - 0) / 5 = 0.2.

Завдання

Swipe to start coding

  1. Використайте функцію arange() для створення масиву even_numbers.
  2. Вкажіть аргументи для створення масиву парних чисел від 2 до 21 невключно.
  3. Використайте відповідну функцію для створення масиву samples, яка дозволяє задати кількість значень у заданому інтервалі.
  4. Вкажіть перші три аргументи для створення масиву з 10 рівновіддалених чисел між 5 та 6.
  5. Переконайтеся, що 6 не входить до масиву samples.

Рішення

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 4
single

single

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Suggested prompts:

Can you explain the difference between arange() and linspace() in more detail?

What are some common use cases for arange() and linspace()?

How does floating-point precision affect the results of arange()?

close

Awesome!

Completion rate improved to 3.7

bookФункції Створення для Одномірних Масивів

Свайпніть щоб показати меню

Окрім базового створення масиву шляхом явного зазначення елементів, numpy також дозволяє автоматичне створення масивів за допомогою спеціальних функцій. Ось дві з найпоширеніших функцій для створення винятково одномірних масивів:

  • arange();
  • linspace().

arange()

Функція numpy.arange() подібна до вбудованої функції Python range(), однак повертає об'єкт типу ndarray. По суті, вона створює масив з рівномірно розташованими елементами у заданому інтервалі.

Наприклад, якщо інтервал задано від 0 до 10 з кроком 2, результатом буде масив: [0, 2, 4, 6, 8].

Нижче наведено три найважливіші параметри цієї функції та їх призначення:

  1. start:

    • Значення за замовчуванням: 0;
    • Визначає перший елемент масиву.
  2. stop:

    • Значення за замовчуванням відсутнє;
    • Визначає кінцеву межу, яка не включається до масиву.
  3. step:

    • Значення за замовчуванням: 1;
    • Вказує крок між елементами масиву.
12345678910
import numpy as np # Creating an array of integers from 0 to 11 exclusive with step=1 array_1 = np.arange(11) print(array_1) # Creating an array of integers from 1 to 11 exclusive with step=1 array_2 = np.arange(1, 11) print(array_2) # Creating an array of integers from 0 to 11 exclusive with step=2 array_3 = np.arange(0, 11, 2) print(array_3)
copy

linspace()

Хоча arange() може працювати з дійсними числами, для цієї мети рекомендується використовувати numpy.linspace() замість numpy.arange(), оскільки arange() може давати неочікувані результати через помилки точності з плаваючою комою при обчисленні кроків. На відміну від цього, linspace() генерує певну кількість рівновіддалених точок у заданому інтервалі, що забезпечує точність і послідовність.

У linspace() замість параметра step використовується параметр num, який визначає кількість вибірок (чисел) у заданому інтервалі (за замовчуванням — 50).

1234567
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_1 = np.linspace(0, 1, 5) print('Example 1:', array_1) # Generating 7 equally spaced values between -1 and 1 (inclusive) array_2 = np.linspace(-1, 1, 7) print('Example 2:', array_2)
copy

Endpoint

Параметр endpoint визначає, чи буде значення stop включено. За замовчуванням він дорівнює True (включно). Якщо встановити його у False, значення stop буде виключено, що трохи зменшує розмір кроку.

Нижче наведено порівняння array_inclusive та array_exclusive:

1234567
import numpy as np # Generating 5 equally spaced values between 0 and 1 (inclusive) array_inclusive = np.linspace(0, 1, 5) print('Endpoint = True:', array_inclusive) # Generating 5 equally spaced values between 0 and 1 (exclusive) array_exclusive = np.linspace(0, 1, 5, endpoint=False) print('Endpoint = False:', array_exclusive)
copy

Якщо endpoint=True, інтервал [0,1][0, 1] ділиться на 4 рівні відрізки та включає сам кінцевий елемент (1), що дає крок (10)/4=0.25(1 - 0) / 4 = 0.25.

Якщо endpoint=False, інтервал [0,1)[0, 1) ділиться на 5 рівних відрізків, оскільки кінцевий елемент виключено, що дає крок (10)/5=0.2(1 - 0) / 5 = 0.2.

Завдання

Swipe to start coding

  1. Використайте функцію arange() для створення масиву even_numbers.
  2. Вкажіть аргументи для створення масиву парних чисел від 2 до 21 невключно.
  3. Використайте відповідну функцію для створення масиву samples, яка дозволяє задати кількість значень у заданому інтервалі.
  4. Вкажіть перші три аргументи для створення масиву з 10 рівновіддалених чисел між 5 та 6.
  5. Переконайтеся, що 6 не входить до масиву samples.

Рішення

Switch to desktopПерейдіть на комп'ютер для реальної практикиПродовжуйте з того місця, де ви зупинились, використовуючи один з наведених нижче варіантів
Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 1. Розділ 4
single

single

some-alt