Чтение данных прямо из буфера обмена без предварительного сохранения

Когда я пишу о библиотеке или новой концепции, мне обычно нравится демонстрировать ее работу на примерах. Источники наборов данных, которые я использую в своих статьях, сильно различаются. Иногда я создаю простые наборы данных игрушек, в то время как в других случаях я использую известные сайты наборов данных, такие как Kaggle и Google search. Однако каждый раз, когда мне нужно продемонстрировать концепцию, мне приходится выполнять кропотливую работу по копированию данных из источника, сохранению их в моей системе и, наконец, использованию в моей среде разработки. Каково же было мое удивление, когда я обнаружил в пандах встроенный метод, созданный для решения его проблемы. Этот метод, удачно названный read_clipboard, является абсолютным спасителем, когда вы хотите быстро опробовать новую функцию или библиотеку, и в этой статье мы узнаем, как его использовать.

Использование функции pandas.read_clipboard ()

Метод pandas read_clipboard() создает фрейм данных из данных, скопированных в буфер обмена. Он считывает текст из буфера обмена и передает его в read_csv(), который затем возвращает проанализированный объект DataFrame.

Синтаксис

pandas.read_clipboard(sep='\\s+', **kwargs)

Если вы работали с read_csv(), пандами, read_clipboard() метод по сути тот же. Единственное отличие состоит в том, что источником данных в последнем является буфер обмена, а не файл CSV.

Я вас охватил, если вы хотите глубоко погрузиться в некоторые параметры функции read_csv в пандах.



использование

Давайте теперь рассмотрим различные способы использования этого метода. Основные этапы:

1. Копирование данных из файлов Excel

Начнем с копирования некоторых наборов данных из файла Excel. Это наиболее распространенный сценарий.

Теперь данные скопированы в буфер обмена. Затем мы перейдем к экземпляру Jupyter Notebook (или любой IDE) и введем следующий фрагмент кода:

import pandas as pd
df = pd.read_clipboard()
df

Скопированный набор данных передается в переменную df и теперь доступен в вашей среде. Ниже представлен GIF-файл, наглядно демонстрирующий процесс.

2. Копирование данных из файлов CSV.

Если у вас есть файл CSV, действия остаются прежними. Вам нужно будет только внести определенные изменения в параметры функции. Рассмотрим следующие данные CSV:

,Order ID,Category,Sales,Quantity,Discount
0,1,Apparels,16.448,2,0.2
1,2,Electronics,65.0,87,0.2
2,3,Cosmetics,272.736,3,0.2
3,4,Apparels,3.54,2,0.8
4,5,Electronics,19.536,3,0.2
5,6,Cosmetics,19.44,3,0.0
6,7,Grocery,12.78,3,0.0
7,8,Grocery,2573.82,9,0.0
8,9,Apparels,609.98,2,0.0
9,10,Cosmetics,300.0,10,0.5

Скопируйте приведенные выше данные и запустите приведенный ниже код.

df = pd.read_clipboard(
    sep=",",
    header="infer",
    index_col=0,
    names=["Order", "ID", "Category", "Sales", "Quantity", "Discount"],
)
df

Мы получаем тот же фрейм данных, что и на шаге 1. Нам просто нужно было передать имя столбцов и информацию о header и index column.

3. Копирование данных с веб-страниц.

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

Сохранение данных

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

df.to_csv('data.csv')

Вы также можете сохранить данные в формате HTML, чтобы отображать данные в виде таблиц HTML.

df.to_html('data.html')

Заключение

Теперь, когда вы узнали о методе read_clipboard, вы обязательно захотите попробовать его. Я уверен, что если вам нравится создавать учебники, связанные с данными, это пригодится. Вы также можете проверить другие блоги, которые я написал о функциях pandas. Например, этот помогает вам создавать интерактивные графики непосредственно с помощью pandas, а this представляет собой практическое руководство по сортировке фреймов данных в Pandas.