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

Как работает метод pandas read_clipboard

Объяснитель о методе Python pandas Read_clipboard. С тегом Python, Pandas, Codenewbie, Blogmore.

В прошлом году я отслеживал Fanatic Golden Badge из StackOverflow, этот значок признает важный вклад членов сообщества. Он вознаграждает пользователей, которые посещают сайт в течение 100 дней подряд, и он редко присуждается.

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

Это было очень больно для меня Но я не сдался И я начал новый год с решения, чтобы не забыть проверять мой профиль каждый божий день.

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

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

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

  pandas.read_clipboard()

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

Чтобы получить максимальную отдачу от этого поста, лучше, если вы знакомы с библиотекой Python и Pandas. Вы также можете проверить это Учебник или это от Панды Чтобы начать с этого. Вам также нужна рабочая среда Python, чтобы запустить пример из этого урока, одним из моих любимых является ноутбук Jupyter или консоль Ipython.

История

Метод read_clipboard был впервые введен в версии 0,13 Панды, чтобы решить проблему создания DataFrame из данных, скопированных в буфер обмена. Когда это было введено, это был удобный способ взять содержимое буфера об буфере обмена и передать их методу read_table. Это стало популярным, когда люди начали задавать вопросы о пандах при переполнении стека, добавив содержание их данных в качестве текста в вопросы. И теперь лучшие разработчики используют его каждый раз, когда хотят оказать помощь новичке, когда они публикуют свои проблемы на сайте.

Как это работает :

Как сказано в Метод документация :

Метод read_clipboard считывает текст из буфера обмена и передайте метод read_table и возвращает проанализированную: DataFrame

Этот метод очень похож на метод read_csv pandas или read_table, но где данные поступают из буфера буфера обмена вместо файла CSV. Во -первых, вам нужно иметь текст из DataFrame. Важно, чтобы текст структурирован в способе передачи данных с заказом данных в строках и столбцах.

После этого вам необходимо скопировать данные, используя CTRL+C или CMD+C на Mac, затем вы вызовите метод pd.read_clipboard () в своей среде, и, наконец, вы получаете данные, который вы можете использовать для выполнения всех манипуляций, которые могут быть сделано в данных данных.

Пример

Давайте посмотрим, как это работает в реальном живом примере: Предположим, у вас есть следующие данные, и вы хотите создать из него фрейм данных:

    bar   foo
0    4     1
1    5     2
2    6     3 

Вам просто нужно скопировать данные в вашем буфер обмена и написать этот метод в вашей среде или консоли ipython (не копируйте их, но пишите, в противном случае он будет перезаписать данные в вашем буфер обмена):

import pandas as pd 
pd.read_clipboard()

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

df = pd.read_clipboard()

Другой пример – когда вы хотите ответить на вопрос на Stackoverflow: Ищите вопрос с меткой Pandas Здесь и проверьте, опубликовал ли пользователь DataFrame.

Или вы можете начать с Этот вопрос и скопируйте общие данные и напишите следующее в своей среде Python:

df = pd.read_clipboard()

Если все будет прекрасно сделано, вы получите следующее в своем DF:

Вы можете увидеть все действия в анимации ниже.

Pro Tip: Как сказано в документации метода, этот один передает данные в метод read_table, вы можете использовать параметры read_table для создания магии с помощью этого метода.

Вот пример: Предположим, у вас есть вопрос, если опубликованные данные поступают из файла CSV:

1,Allen, Miss Elisabeth Walton,1st,29,female,1,1
2,Allison, Miss Helen Loraine,1st,2,female,0,1
3,Allison, Mr Hudson Joshua Creighton,1st,30,male,0,0
4,Allison, Mrs Hudson JC (Bessie Waldo Daniels),1st,25,female,0,1
5,Allison, Master Hudson Trevor,1st,0.92,male,1,0
6,Anderson, Mr Harry,1st,47,male,1,0
7,Andrews, Miss Kornelia Theodosia,1st,63,female,1,1
8,Andrews, Mr Thomas,1st,39,male,0,0
9,Appleton, Mrs Edward Dale (Charlotte Lamson),1st,58,female,1,1
10,Artagaveytia, Mr Ramon,1st,71,male,0,0
11,Astor, Colonel John Jacob,1st,47,male,0,0
12,Astor, Mrs John Jacob (Madeleine Talmadge Force),1st,19,female,1,1
13,Aubert, Mrs Leontine Pauline,1st,NA,female,1,1
14,Barkworth, Mr Algernon H,1st,NA,male,1,0
15,Baumann, Mr John D,1st,NA,male,0,0

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

Первый – это сентябрь:

СЕП: Разделитель данных, по умолчанию, это пространство, но для этого случая нам нужно будет использовать запятую, поскольку наши данные находятся в формате CSV

Второй:

имена: который в большинстве случаев является массивом в большинстве случаев, вот описание из документов:

Список названий столбцов для использования. Если файл не содержит строки заголовка, то вам следует явно пройти. Дубликаты в этом списке приведут к выпущению пользователя.

третий -:

index_col: Укажите, какие столбцы использовать в качестве столбцов индекса или список значений для использования в качестве индекса. Вот описание от Pandas Doc:

Столбец для использования в качестве метки строки данных DataFrame. Если приведена последовательность, используется мультиндекс. Если в конце каждой строки у вас есть узолотый файл с делимитерами, вы можете подумать о том, чтобы заставить Панды не Используйте первый столбец в качестве индекса (имена строк)

Давайте передадим эти параметры в наш метод read_clipboard и получим рабочий DataFrame:

df = pd.read_clipboard(sep=',', 
                       index_col=0, 
                       names=['firstName', 
                              'Name',
                              'PClass',
                              'Age',
                              'Sex',
                              'Survived',
                              'SexCode'])

А вот и окончательный флажок данных в результате:

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

Когда мы не используем метод read_table, мы все равно можем создавать наш собственный флажок DataFrame вручную из структурированного текстового файла, но мы ограничены временем и многими ошибками. Это делает вещи сложнее, потому что трудно воспроизвести точный флажок данных. Но с помощью метода read_clipboard мы можем создать DataFrame из структурированных текстовых данных, которые позволяют нам отвечать на простые вопросы на StackOverflow.

Заключение Теперь, когда вы узнали о методе read_clipboard, взгляните на другие инструменты io (вход-выпуск) от Pandas в Официальная документация Анкет

Для получения дополнительной информации, ознакомьтесь с этим сообщением в блоге от DataCamp , 10 минут от Панды и этот корм с вопросами с меткой Pandas на Stackoverflow.

Особая благодарность команде Codenewbie за их полезные советы и миссии, которые они дали нам во время блога, больше задач.

Оригинал: “https://dev.to/espoir/how-pandas-readclipboard-method-works-ake”