Что такое self в Python: примеры из реального мира
Что такое self в Python: примеры из реального мира
Как специалист по данным, работающий с Python, вы, скорее всего, сталкивались с библиотекой NumPy . Это один из базовых пакетов для научных вычислений в Python .
Благодаря способности выполнять высокопроизводительные операции с многомерными массивами NumPy является важным инструментом для всех, кто занимается наукой о данных или численными вычислениями на Python.
Шпаргалка NumPy может стать отличным ресурсом, который поможет вам в вашем путешествии по этой библиотеке Python. Подробная шпаргалка поможет вам ориентироваться в функциях NumPy и быстро научиться использовать его для различных задач!
Также помните, что NumPy лежит в основе важных библиотек, таких как Pandas, SciPy, sci-kit-learn и других пакетов Python.
Изучив его основы с помощью шпаргалки Python NumPy , вы будете лучше подготовлены к работе с этими библиотеками. Вы также улучшите свои навыки работы со сложными структурами данных и вычислениями.
Вы старая школа (как и мы) и хотите скачать и, возможно, распечатать свою шпаргалку?
Прокрутите вниз, чтобы сделать это.
Оглавление
Основы NumPy
В этом разделе мы рассмотрим основы NumPy, сосредоточившись на установке NumPy, создании массива, атрибутах массива и типах данных. Эти концепции обеспечат прочную основу для понимания и эффективного использования NumPy в ваших проектах Python по науке о данных.
1. Установка и импорт NumPy
Вы можете установить NumPy из командной строки, используя следующую команду:
pip install numpy
После установки импортируйте его в свой код.
import numpy as np
Имейте в виду, что вы можете использовать любое другое имя, кроме np . Однако np — это стандартное соглашение об импорте NumPy, используемое большинством разработчиков и специалистов по данным.
2. Создание массива
Создавать массивы в NumPy просто и понятно. Вы можете создавать массивы из списков или кортежей, используя функцию numpy.array() :
import numpy as np
a = np.array([1, 2, 3]) # Creates a 1D array
b = np.array([(1, 2, 3), (4, 5, 6)]) # Creates a 2D array
Вы также можете создавать массивы определенных форм и значений, используя различные функции:
np.zeros() : создает массив, заполненный нулями.
np.ones() : создает массив, заполненный единицами.
np.identity() : создает массив матрицы идентичности.
np.empty() : создает массив без инициализации его элементов каким-либо конкретным значением.
np.arange() : создает массив с регулярно расположенными значениями между начальным и конечным значением.
np.linspace() : создает массив с указанным количеством равномерно расположенных значений между начальным и конечным значением.
Примечание. Вы не можете создать пустой массив в NumPy. Каждый массив NumPy имеет фиксированный неизменный размер, и каждый элемент в массиве должен быть заполнен при создании массива.
Функция np.empty() создает требуемую форму массива и заполняет его случайными значениями. Метод по умолчанию создает массив случайных чисел с плавающей запятой.
Вы можете создать другой тип данных массива, используя параметр dtype .
3. Атрибуты массива
Массивы NumPy имеют несколько атрибутов, предоставляющих полезную информацию о массиве. Давайте посмотрим на некоторые из них:
ndarray.shape: возвращает размеры массива в виде кортежа (строки, столбцы).
ndarray.ndim: возвращает количество измерений в массиве.
ndarray.size: возвращает общее количество элементов в массиве.
ndarray.dtype: возвращает тип данных элементов массива.
Чтобы получить доступ к этим атрибутам, используйте запись через точку, например:
a = np.array([(1, 2, 3), (4, 5, 6)])
#Print out the array shape
print(a.shape) # Output: (2, 3)
4. Типы данных
NumPy предоставляет несколько типов данных для хранения данных в массивах, таких как целые, строковые, с плавающей запятой, логические и сложные. По умолчанию NumPy пытается вывести тип данных на основе входных элементов.
Однако вы также можете явно указать тип данных, используя ключевое слово dtype . Например:
import numpy as np
a = np.array([1, 2, 3], dtype=float) # Creates an array of floats
Общие типы данных NumPy включают:
np.int32 : 32-битное целое число
np.int64: 64-битное целое число
np.float32: 32-bit floating-point number
np.float64: 64-bit floating-point number
np.complex: Complex number, represented by two 64-bit floating-point numbers
You can also convert arrays from one data type to another. In this example, here’s how we can convert the Integer array a into a Boolean array arr using the np.array() method.
From the example, we can see the array() method converts the array elements into boolean values. These boolean values then form the new NumPy array arr.
Understanding these basic concepts of NumPy will allow you to effectively work with arrays and perform a variety of mathematical NumPy operations. For example, you can check out our video on how to transform and code addresses In Python.
In it, we used Python Pandas and NumPy data types to geocode home addresses.
Array Manipulation
In this section, you will learn about various array shape manipulation techniques in NumPy. We will discuss reshaping, concatenation, copying, splitting, adding/removing elements, indexing, and slicing.
These techniques are crucial for effectively working with array data in your data science projects.
Let’s dive into each sub-section.
1. Reshaping
Reshaping an array in NumPy is a common task you’ll perform. You might need to change the shape of your array to match the requirements of a function or an algorithm.
To reshape an array, use the reshape() function:
arr = np.array([1, 2, 3, 4, 5, 6])
new_arr = arr.reshape(2, 3)
This will convert your one-dimensional array into a two-dimensional array with 2 rows and 3 columns.
Note: Make sure the new shape you provide has the same size (number of array elements) as the original array.
2. Copying
You can copy the elements in one NumPy array to another using the copy() method. You should note that using the assignment operator ‘=’ creates a shallow copy.
#Creating a shallow copy of a NumPy array
a = np.array([9, 6, 12, 16, 20])
b = a
b[0] = 19
print(a) #Output:[19, 6, 12, 16, 20]
print(b) #Output:[19, 6, 12, 16, 20]
The new array only references the old array in the system’s memory. They contain the same elements and they are not independent of each other.
By using the deep copy, you create a new NumPy array that contains the same data as the old one while being independent of it.
#Creating a deep copy of a NumPy array
a = np.array([9, 6, 12, 16, 20])
b = np.copy(a)
b[0] = 19
print(a) #Output:[9, 6, 12, 16, 20]
print(b) #Output:[19, 6, 12, 16, 20]
3. Concatenation
Occasionally, you may need to merge two arrays into a single one. In NumPy, you can use the concatenate() function to join arrays along an existing axis:
import numpy as np
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])
result = np.concatenate((arr1, arr2))
This combines arr1 and arr2 into a single array. Keep in mind that the arrays being concatenated should have the same shape, except along the specified axis.
4. Splitting
Splitting is the opposite of concatenation. You can divide an array into smaller sub-arrays using the split() function:
arr = np.array([1, 2, 3, 4, 5, 6])
result = np.split(arr, 3)
This splits the array into 3 equal-sized sub-arrays. Ensure that the number of splits you specify can evenly divide the size of the array along the given axis.
5. Adding/Removing Elements
Adding or removing elements in a NumPy array can be achieved using the append() and delete() functions. You can use the former to append values to the end of the array while the latter deletes the element at a specified index.
Here’s an example:
arr = np.array([1, 2, 3])
arr = np.append(arr, [4, 5, 6]) # Appends values to the end of the array
arr = np.delete(arr, 0) # Removes the array element on index 0
Keep in mind that NumPy arrays have a fixed size. When using append() or delete(), a new array is created, and the original one is not modified.
6. Indexing
You can perform indexing operations on NumPy arrays the same way you’d do them on Python lists or tuples. Let’s look at how you can access or change array elements in a given array.
arr = np.array([1, 2, 3])
#Returns the array element on index 1
element_2 = b[1]
#Change the array element on index 0
arr[0]= 89
7. Slicing
You can also slice NumPy arrays to extract or view a section of the data the same way you’d do Python lists or sets. Let’s take a look at an example below:
arr1 = np.array([1, 2, 3, 4, 5, 6, 7])
arr2 = np.array([(1, 2, 3, 6, 0), (4, 5, 6, 11, 13)])
# To return the first 3 elements of arr1
print(arr1[0:3]) #Output: [1, 2, 3]
# To return the second row in arr2
b = arr2[1, : ].copy() #Output: [4, 5, 6, 11, 13]
Note: Slicing creates a shallow copy that still references the main array. So, any change you make to the sliced data will be applied to the main array and vice versa.
To avoid this, you can use the copy() method to create a deep, independent copy.
Elementary Functions
In this section, you’ll learn about different elementary functions in NumPy, which will ease your data analysis tasks. We’ll cover arithmetic operations, trigonometry, and exponents and logarithms.
1. Arithmetic Operations
NumPy offers various math operations on arrays that make them simple and efficient to work with. array mathematics vector math
Some of the operations are:
Addition: numpy.add(x1, x2)
Subtraction: numpy.subtract(x1, x2)
Multiplication: numpy.multiply(x1, x2)
Division: numpy.divide(x1, x2)
Modulus: numpy.mod(x1, x2)
Power: numpy.power(x1, x2)
Square root: numpy.sqrt(x)
Note: When using these operations, the two arrays must be the same shape. If not, you’ll run into errors.
There is an exception for certain arrays thanks to a NumPy feature called broadcasting. We’ll cover that in a later section.
You can perform these operations element-wise on the arrays, which makes them highly efficient for large-scale data manipulation.
2. Trigonometry
Trigonometric functions play a significant role in various mathematical and scientific computations. NumPy provides a wide range of trigonometric functions.
Some of the essential functions are:
Sine: numpy.sin(x)
Cosine: numpy.cos(x)
Tangent: numpy.tan(x)
Arcsine: numpy.arcsin(x)
Arccosine: numpy.arccos(x)
Arctangent: numpy.arctan(x)
These functions work seamlessly with arrays, making it easier for you to perform vectorized computations on large datasets.
3. Exponents and Logarithms
Exponents and logarithms are crucial for various numerical operations. NumPy provides an extensive collection of functions for dealing with exponents and logarithms.
Some of the primary functions are:
Exponential: numpy.exp(x)
Logarithm(base e): numpy.log(x)
Logarithm(base 10): numpy.log10(x)
Logarithm(base 2): numpy.log2(x)
Utilizing these functions, you can quickly perform complex mathematical operations on each element in the array. This makes your data analysis tasks more accessible and efficient.
Array Analysis
In this section, we will discuss various techniques to analyze arrays and array elements in NumPy. Some of the key features we will cover include aggregate functions, statistical functions, searching, and sorting.
1. Aggregate Functions
NumPy provides several aggregate functions that allow you to perform operations on arrays, such as summing all their elements, finding the minimum or maximum value, and more:
sum: np.sum(your_array) – Calculate the sum of all the elements in the array.
min: np.min(your_array) – Find the minimum array element.
max: np.max(your_array) – Find the maximum array element.
mean : np.mean(your_array) — вычислить среднее значение значений в массиве.
медиана : np.median(your_array) — найти медиану значений в массиве.
2. Статистические функции
NumPy также имеет множество статистических функций, которые помогут вам анализировать данные:
std: np.std(your_array) — вычислить стандартное отклонение значений в массиве.
var: np.var(your_array) — вычислить дисперсию значений в массиве.
corrcoef : np.corrcoef(your_array) — вычислить коэффициент корреляции массива.
3. Поиск
Поиск в массивах NumPy можно выполнять различными способами:
argmin: np.argmin(your_array) — найти индекс минимального элемента массива.
argmax: np.argmax(your_array) — найти индекс максимального элемента массива.
где: np.where(условие) – Возвращает индексы элементов в массиве, которые удовлетворяют заданному условию.
4. Сортировка
Вы можете отсортировать элементы в вашем массиве, используя следующие функции:
sort : np.sort(your_array) — Сортировка элементов в массиве в порядке возрастания.
argsort: np.argsort(your_array) — возвращает индексы, которые будут сортировать массив.
С помощью этих функций и методов вы можете удобно анализировать массивы NumPy и манипулировать ими, чтобы находить ценную информацию и поддерживать свои усилия по анализу данных.
Расширенные функции
В этом разделе мы рассмотрим некоторые расширенные функции NumPy, которые помогут вам более эффективно работать с данными. Мы рассмотрим функции вещания и линейной алгебры.
1. Вещание
Вещание — это мощная функция NumPy, которая позволяет выполнять операции с массивами разных форм и размеров. Он работает, автоматически расширяя размеры меньшего массива, чтобы соответствовать большему массиву, что упрощает выполнение поэлементных операций.
Вот пример:
import numpy as np
A = np.array([1, 2, 3])
B = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
C = A + B
В этом примере одномерный массив A передается в соответствии с формой двумерного массива B, что позволяет выполнять поэлементное добавление.
Помните об этих правилах при работе с трансляцией:
Размеры массивов должны быть совместимы (либо одинаковый размер, либо один из них равен 1).
Вещание применяется от конечных измерений и работает в направлении ведущих измерений.
2. Линейная алгебра
NumPy предоставляет несколько функций линейной алгебры, которые могут быть полезны при работе с многомерными массивами. Некоторые из этих функций включают в себя:
np.dot(A, B): вычисляет скалярное произведение двух массивов.
np.linalg.inv(A) : вычисляет обратную квадратную матрицу.
np.linalg.eig(A) : вычисляет собственные значения и собственные векторы квадратной матрицы.
np.linalg.solve(A, B): решает линейную систему уравнений, где A — матрица коэффициентов, а B — матрица констант.
Не забывайте всегда проверять совместимость ваших матриц перед выполнением этих операций.
Ввод и вывод
В этом разделе мы рассмотрим, как сохранять и загружать массивы, а также как читать и записывать файлы с помощью NumPy.
1. Сохранение и загрузка массивов
Чтобы сохранить массив, вы можете использовать функцию NumPy np.save() . Эта функция принимает имя файла и массив в качестве двух основных аргументов.
import numpy as np
arr = np.array([1, 2, 3])
np.save('my_array.npy', arr)
Чтобы загрузить сохраненный массив, используйте функцию np.load() , указав имя файла в качестве аргумента.
loaded_array = np.load('my_array.npy')
print(loaded_array)
# Output: array([1, 2, 3])
Вы также можете сохранять и загружать несколько массивов с помощью функций np.save() и np.load() .
2. Чтение и запись в текстовые файлы
NumPy предоставляет функции для чтения и записи текстовых файлов с массивами, например np.loadtxt() и np.savetxt() . Вы можете использовать эти функции для сохранения и загрузки данных из форматов файлов, таких как файл txt или CSV.
Чтобы прочитать текстовый файл в массив, используйте функцию np.loadtxt() . Он принимает имя файла в качестве основного аргумента, а также поддерживает необязательные аргументы для указания разделителя, dtype и т. д.
arr_from_txt = np.loadtxt('data.txt', delimiter=',')
print(arr_from_txt)
Чтобы прочитать данные из файла CSV, вы также можете использовать функцию np.loadtxt() . Однако убедитесь, что в качестве разделителя всегда установлена запятая, « , «.
Чтобы записать массив в текстовый файл, используйте функцию np.savetxt() . Эта функция принимает имя файла и массив в качестве двух основных аргументов, за которыми следуют необязательные аргументы, такие как разделитель и заголовок.
arr_to_txt = np.array([[1, 2, 3], [4, 5, 6]])
np.savetxt('output_data.txt', arr_to_txt, delimiter=',')
Эти функции ввода и вывода позволяют эффективно работать с массивами и текстовыми файлами в задачах обработки и обработки данных с использованием NumPy.
Загрузите шпаргалку ниже
Последние мысли
Что ж, это все, что вам нужно знать, чтобы начать работу с библиотекой Numpy Python! Вы также можете использовать шпаргалку Python Numpy в качестве удобного справочника при работе с библиотекой.
Для более продвинутых функций вы можете ознакомиться с документацией NumPy . Вы также можете ознакомиться с этой забавной памяткой по Python, которую мы составили как для новых, так и для опытных разработчиков.
Удачи!
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.
Что такое шлюз LuckyTemplates? Все, что тебе нужно знать