Памятка Numpy: анализ основных данных в Python

Памятка Numpy: анализ основных данных в Python

Памятка Numpy: анализ основных данных в 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: анализ основных данных в Python

Примечание. Вы не можете создать пустой массив в 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)

Памятка Numpy: анализ основных данных в Python

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.

Памятка Numpy: анализ основных данных в Python

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.

Памятка Numpy: анализ основных данных в Python

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.

Памятка Numpy: анализ основных данных в Python

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)

Памятка Numpy: анализ основных данных в Python

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) — найти медиану значений в массиве.

Памятка Numpy: анализ основных данных в Python

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, что позволяет выполнять поэлементное добавление.

Памятка Numpy: анализ основных данных в Python

Помните об этих правилах при работе с трансляцией:

  • Размеры массивов должны быть совместимы (либо одинаковый размер, либо один из них равен 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-шпаргалка Скачать

Последние мысли

Что ж, это все, что вам нужно знать, чтобы начать работу с библиотекой Numpy Python! Вы также можете использовать шпаргалку Python Numpy в качестве удобного справочника при работе с библиотекой.

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

Удачи!


Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Что такое self в Python: примеры из реального мира

Как сохранить и загрузить файл RDS в R

Как сохранить и загрузить файл RDS в R

Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

Новый взгляд на первые N рабочих дней — решение для языка кодирования DAX

В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

Продемонстрируйте идеи с помощью метода многопоточных динамических визуализаций в LuckyTemplates

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

Введение в фильтрацию контекста в LuckyTemplates

Введение в фильтрацию контекста в LuckyTemplates

В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Лучшие советы по использованию приложений в онлайн-службе LuckyTemplates

Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Анализ изменений маржи прибыли с течением времени — аналитика с LuckyTemplates и DAX

Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.

Идеи материализации кэшей данных в DAX Studio

Идеи материализации кэшей данных в DAX Studio

В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.

Бизнес-отчетность с использованием LuckyTemplates

Бизнес-отчетность с использованием LuckyTemplates

Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать

Что такое шлюз LuckyTemplates? Все, что тебе нужно знать