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

Пакет Pandas занимается импортом данных и экспериментированием с их значениями в виде изображений и анализом в рамках одного кадра. Да!! Фрейм данных (еще одна концепция в пандах)… давайте быстро проверим панд, и я надеюсь, что это поможет вам в этом блоге.

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

Чтобы импортировать панд:

импортировать панд как pd

Чтобы увидеть данные в других формах, нам нужно импортировать данные в формате CSV или Excel с помощью фреймов данных pandas.

data = pd.read_excel("Randoms.Xlsx")

данные

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

Например:

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

Head() =по умолчанию выдает первые 5 строк

Tail()=по умолчанию дает последние 5 строк

data.head()

Чтобы узнать общее количество строк и столбцов в наборе данных, мы используем форму.

data.shape

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

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

data.iloc[:10,:3]

В приведенном выше примере мы получили первые 10 строк, начиная с 0-й строки (:10) и от 0-го столбца до 2-го столбца (:3)

Хорошо! Что, если мы хотим удалить первый столбец в наборе данных, который одинаков для всех строк в приведенном выше примере.

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

Что делать, если набор данных содержит ту же цену для большего количества товаров? Pandas дает нам возможность группировки на основе столбцов. Позже мы можем распечатать отдельные группы/цену, если нам нужен список продуктов с одинаковой ценой. Захватывающе? Посмотрим!

Группировка:

dd = data.groupby('Final_Price')

dd

для Final_Price цена в дд:

печать(Final_Price)

распечатать(цена)

Пример: получить конкретный список товаров с одинаковой ценой 0,0308 долл. США

dd.get_group(0.0308)

Индексирование с использованием loc = с метками, а не позициями:

Очень сложно отследить, какой столбец на какой позиции находится. Итак, pandas дает нам отслеживать с помощью меток. Интересно?

data.loc[:5"SalesType"]

data.loc[:5,["SalesType", "Final_Price"]]

В приведенном выше примере мы можем проследить строки для столбцов SalesType и Final_Price от начальной 0-й строки до 5-й строки.

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

данные[["SalesType","Dig180312']]

Приведенный выше метод возвращает полные данные из указанных столбцов, которые относятся к серии панд. Объект серии отличается от фрейма данных pandas, который относится к табличному набору данных как со строками, так и со столбцами. Еще одна особенность объекта серии заключается в том, что он содержит значения любого типа данных в строках.

ser=pd.Series([1,"Машинное обучение",0,9878])

сер

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

df= pd.DataFrame(

[

[50,100],

["MPN1234", "I67564R"]

],

index=["r1", "r2"],

columns=["Полупроводник", "Изолятор"]

)

Df

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

Как насчет индексации приведенного выше фрейма данных?

Допустим, нам нужны только данные об изоляторах для всех строк, пропуская столбец "Полупроводник"

df.loc[:"Изолятор"]

Далее довольно интересно, если мы хотим найти среднее значение для каждой строки/столбца.

данные.среднее (ось=1)

Чтобы найти корреляцию между столбцами, мы можем использовать функцию pandas corr(), как показано ниже.

data.corr()

data["DCcurr"].corr(data["Final_Price"])

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

Ниже приведены методы, которые широко используются во фреймах данных, таких как corr(), count(), max(), min(), median(), std()

Примечание.Упомянутые выше методы принимают только ненулевые значения из набора данных.

Булевы значения в pandas

Чтобы получить логические значения для столбцов, которые превышают указанную цену, можно вычислить.

bool=data["Final_Price"]›20

логическое значение

Чтобы получить строки с ценой выше 20, их можно вычислить на основе логических значений во фрейме данных.

x=данные[bool]

x.head()

Визуализация:

Чтобы визуализировать набор данных, у нас есть несколько функций построения графиков, которые принимают фрейм или ряд данных в качестве аргументов. Мы используем matlplot для построения набора данных, используя ключевое слово «Тип», чтобы указать, например, столбец, гистограмму, круговую диаграмму, область и т. д.

импортировать matplotlib.pyplot как plt

data.iloc[:12,1:3].plot(kind="bar")

Чтобы построить график в виде горизонтальных графиков, используйте barh()

data.iloc[:12,1:3].plot.barh(stacked=True)

data.iloc[:12,1:3].plot.hist(альфа=0,5, бины=20, ориентация='горизонтально', кумулятивный=Истина, цвет='r')

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

Как насчет точечных диаграмм? Я видел на многих собраниях внутри организации, что мы представляем сложные наборы числовых данных в виде диаграмм рассеивания для лучшего отслеживания характеристик.

df = pd.DataFrame(np.random.rand(43, 4), columns=['DC123', 'DC12', 'DC1', 'DC1230'])
df.plot.scatter( х='а', у='б');

Для отображения графика нам нужны числовые данные (столбцы) для графиков X и Y. В графиках такого типа нам нужно добавить метки для лучшего отслеживания значений.

В следующем блоге я расскажу о подробной работе над набором данных для всех типов графиков и о многих других интересных темах, связанных с машинным обучением. :)

Пожалуйста, свяжитесь с нами, чтобы добавить информацию для этого блога. Спасибо :) :)

Ссылки: Курс прикладного машинного обучения ИИ, https://www.dataquest.io/blog/pandas-python-tutorial/