Рубрики
Без рубрики

Пандас: серия и dataframe

Pandas использует две основные структуры данных, DataFrame и серии для хранения и манипулирования данными. EA … Помечено наукой данных, Python, начинающими, машиной обучения.

Pandas использует две основные структуры данных, DataFrame и серии для хранения и манипулирования данными. Каждый может рассматриваться как смесь или составную структуру данных словари и Списки Отказ То есть элементы в структурах данных PandaS могут быть доступны с помощью ключевых значений, а также численные индексы.

Для остальной части статьи, давайте импомнем библиотеку Pandas.

import pandas as pd

Серии

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

Чтобы создать серию, вы будете использовать серийный конструктор портить Серия () И обычно используют два аргумента для создания серии. Первый аргумент используется для передачи массива значений данных, а второй дополнительный аргумент используется для передачи массива имен индекса. Существует третий аргумент, который используется, чтобы дать имя серии.

Вот несколько способов создать серию:

tweet = pd.Series(["My first tweet", 20, 4],
                  index=["message", "likes", "retweets"],
                  name="Tweet Data")

letters = pd.Series(['a', 'b', 'c', 'd'],
                    index=range(4))

ranking = pd.Series(["A. Einstein", "I. Newton",
                     "N. Tesla", "Heisenberg"],
                    index=[1, 2, 3, 4], name="Scientists")

countries = pd.Series(["India", "Russia", "Japan", "China"])

Выход Печать (Tweet) будет:

Обратите внимание Как вы можете указать имена индекса и имя для всей серии (что в этом случае – «Tweet Data»).

Используя эти имена индексов, теперь вы можете получить доступ к отдельным элементам в серии. На самом деле существует три способа доступа к отдельным элементу, т. Е. Указание имени индекса внутри оператора квадратного кронштейна («[[]», как в словаре), используя имя индекса с оператором DOT (только в том случае, если имя не содержит Любые пробелы) и используя индексацию списка Python:

print(tweet["message"]) # Output : "My first tweet"
print(tweet.likes) # Output : 20
print(tweet[2]) # Output : 4

Dataframe.

Датафарам технически является Коллекция серии Или другими словами, многие серии склеены вместе. Для рисования параллелей вы можете думать об этом как о двумерном массиве или матрице. Тем не менее, это гораздо больше, чем массив или матрица, файл DataFrame может вместить гораздо больше, чем просто 2-х измерения данных.

Чтобы построить DataFrame, вы собираетесь использовать, не очень удивительно, конструктор данных DataFrame портить Dataframe () Отказ Конструктор DataFrame принимает одно позиционное и несколько аргументов ключевых слов, но есть три аргумента, которые вы обычно используете. Первый аргумент занимает словарь, в котором каждая пара клавиш содержит одномерный массив, представляющий столбец. Второй аргумент принимает имена колонны. И третий аргумент принимает список, содержащий имена индексов.

Например.

sales = pd.DataFrame({"Laptops" : [100, 110, 20],
                      "Mobiles" : [30, 35, 4],
                      "Earphones" : [150, 120, 40]},
                     columns={"Laptops", "Mobiles", "Earphones"},
                     index=["2018", "2019", "2020"])
sales

Выход:

Вы можете играть с конструктором DataFrame так же, как мы сделали с серией конструктора. Вы можете получить доступ к отдельным столбцам DataFrame, индексируя именами столбцов либо с оператором Square-кронштейна, либо оператором DOT.

print(sales["Mobiles"], '\n')
print(sales.Earphones)

Выход:

Теперь, чтобы получить доступ к индивидуальному элементу данных внутри DataFrame, вы будете использовать два метода, а именно ILOC и loc Отказ

ILOC : Это уменьшает индексацию DataFrame для стандартной индексации на основе нулевой матрицы Python. Работает с квадратными скобками. То есть,

sales.iloc[0][2] # Output : 150. Laptop Sales in 2018
sales.iloc[0][0] # Output : 100.  Mobile Sales in 2018
sales.iloc[2][2] # Output : 40   Earphone Sales in 2020

Примечание : Метод ILOC работает только с численными индексами.

loc : Это обеспечивает множество гибких способов доступа к элементу в DataFrame. Этот метод доступа к элементам очень похоже на индексы массива Numpy, если вы знакомы с помощью numpy массивов. Это позволяет получить доступ к элементам с использованием меток для индексов, так и для столбцов, а также с использованием численных индексов. То есть:

sales.loc['2018', 'Mobiles']            # Output : 30
sales.loc['2020', 'Earphones']          # Output : 40
sales.loc[['2018', '2020'], 'Laptops'] 
# Output :
# 2018    100
# 2020     20
# Name: Laptops, dtype: int64

loc Метод также принимает массивы логических ценностей в качестве аргументов, но давайте сохраним, что для другой статьи.

Спасибо за прочтение.

С уважением,

Сурадж Упадхьяй Отказ

Оригинал: “https://dev.to/surajupadhyay/pandas-series-and-dataframe-5b24”