Python Pandas dataframe append () — это встроенная функция, которая используется для добавления строк другого dataframe в конец данного dataframe, возвращая новый объект dataframe. Столбцы, отсутствующие в исходных фреймах данных, добавляются как новые столбцы, а новые ячейки заполняются значением NaN.
- Как добавить строки в фрейм данных
- Pandas Dataframe.append ()
- Параметры
- Создайте фрейм данных Pandas, используя список кортежей
- Добавить строку в фрейм данных с помощью dataframe.append () и dict
- Вывод
- Добавить строку в фрейм данных с помощью dataframe.append () и Series
- Вывод
- Как добавить несколько строк в фрейм данных с помощью dataframe.append () и Series
- Вывод
- Добавьте строку из одного фрейма данных в другой фрейм данных с помощью pandas dataframe append ()
- Вывод
- Добавить строку в фрейм данных используя loc [] & list
- Вывод
- Добавьте строку в фрейм данных в позицию индекса с помощью iloc []
- приложение python3. py Серии Имя Имя персонажа0 Ведьмак Генри Кавил Геральт1 Очень странные дела Милли Браун Eleven2 S Education ASA Otis3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк Андервуд Заключение Функция append () фрейма данных Python Pandas используется для добавления отдельной серии, словаря, фрейма данных в виде строки в фрейм данных. Мы также можем добавить несколько строк. Мы также можем использовать loc [] и iloc [] для изменения существующей строки или добавления новой строки. Наконец, Python Pandas: Как добавлять строки в DataFrame окончено. См. Также Pandas set_index () Логическое индексирование Pandas Pandas sort_values () Pandas value_counts ()
- Заключение
- См. Также
Как добавить строки в фрейм данных
Python Pandas DataFrame — это двумерная потенциально составная структура табличных данных с изменяемым размером, с помеченными осями (строками и столбцами). DataFrame может содержать следующие типы данных.
- Серия Pandas: Одномерный помеченный массив, способный хранить любой тип данных с метками оси или индексом. Примером объекта Series является один столбец из DataFrame.
- NumPy ndarray , который может быть записью или структурой.
- Двумерный ndarray с использованием NumPy
- Словари одномерного ndarray, списки, словари или серии.
Есть три основных метода, которые мы можем использовать для добавления строк в DataFrame.
- Dataframe.append ()
- loc []
- iloc []
Pandas Dataframe.append ()
DataFrame.append () — это встроенная функция, которая используется для объединения строк из другого объекта DataFrame. Функция append () возвращает новый объект DataFrame и не изменяет исходные объекты.
Если есть несоответствие в столбцах, новые столбцы добавляются в результирующий DataFrame.
См. следующий синтаксис.
DataFrame.append (other, ignore_index = False, verify_integrity = False , sort = None)
Параметры
- другое : DataFrame или объект типа Series/dict, или список.
- ignore_index : если True, не используйте метки индекса.
- verify_integrity : если True, вызывать ValueError при создании индекса с дубликатами.
- sort : сортировать столбцы, если столбцы self и прочее не выровнены. Сортировка по умолчанию устарела и будет изменена на без сортировки в будущей версии pandas. Явно передайте sort = True , чтобы отключить предупреждение и выполнить сортировку. Явно передайте sort = False , чтобы отключить предупреждение и не выполнять сортировку.
Хорошо, давайте посмотрим на вышеуказанную функцию в действии.
Создайте фрейм данных Pandas, используя список кортежей
См. следующий код.
# app.pyimport pandas as pdshows = [('Ведьмак', 'Генри Кавил', 'Геральт'), ('Очень странные дела', 'Милли Браун', 'Одиннадцать'), ('Конь БоДжек', 'Уилл', 'Боджек') , ('Приключения Сабрины', 'Кирнан Шипка', 'Спеллман'), ('Карточный домик', 'Кевин Спейси', 'Фрэнк Андервуд')] dfObj = pd. DataFrame (shows, columns = ['Series', 'Name', 'Character Name']) print (dfObj)
В приведенном выше коде мы использовали список шоу, состоящий из пяти кортежи.
Имена столбцов фрейма данных — это серия, имя и имя символа.
Индекс фрейма данных — a, b, c, d, e.
См. вывод приведенного выше кода.
python3 app.py Символ имени серии Имя0 Ведьмак Генри Кавил Геральт1 Stranger Things Милли Браун Одиннадцать2 Конь Боджек Уилл Боджек3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк Андервуд
Добавить строку в фрейм данных с помощью dataframe.append () и dict
В dataframe.append () мы можем передать словарь пар ключ-значение, т.е.
- key = Имя столбца
- Value = Значение в этом столбце в новой строке
Давайте добавим новую строку в указанный выше словарь, обходя фрейм данных, т.е.
# app.pynewDfObj = dfObj.append ({'Series': 'S Education', 'Name': 'ASA', 'Character Name': 'Otis'}, ignore_index = True) print (newDfObj)
В приведенном выше коде мы вызвали функцию append () для dataframe и передайте словарь как новую строку dataframe.
См. полный код ниже.
# app.pyimport pandas as pdshows = [('Ведьмак ',' Генри Кавил ',' Геральт '), (' Очень странные дела ',' Милли Браун ',' Одиннадцать '), (' Конь БоДжек ',' Уилл ',' БоДжек '), (' Приключения Сабрины ', 'Кирнан Шипка', 'Спеллман'), ('Карточный домик', 'Кевин Спейси', 'Фрэнк Андервуд')] dfObj = pd.DataFrame (показывает, columns = ['Серия', 'Имя', 'Имя персонажа ']) newDfObj = dfObj.append ({' Series ':' S Education ',' Name ':' ASA ',' Character Name ':' Otis '}, ignore_index = True) print (newDfObj)
Вывод
python3 app.py Название серии Имя персонажа0 Ведьмак Генри Кавил Геральт1 Очень странные дела Милли Браун Eleven2 Конь Боджек Уилл Боджек3 Приключения Сабрины Кирнан Шипка Spellman4 Карточный домик Кевин Спейси Фр. ank Underwood5 S Education ASA Otis
Из выходных данных вы можете видеть, что последняя строка — это только что добавленная строка.
Итак, вот как вы добавляете строку в фрейме данных pandas.
Для столбцов, которых нет в словаре, значение NaN добавляется в окончательный фрейм данных.
Давайте посмотрим на этот сценарий.
# app.pynewDfObj = dfObj.append ({'Series': 'S Education', 'Name': 'ASA'}, ignore_index = True) print (newDfObj )
В приведенном выше коде мы пропустили Имя символа при добавлении новой строки. Таким образом, на выходе будет возвращено NaN. См. Результат.
приложение python3. py Имя серии Имя персонажа0 Ведьмак Генри Кавил Геральт1 Очень странные дела Милли Браун Одиннадцать2 Конь Боджек Уилл Боджек3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк Андервуд5 S Education ASA NaN
Прохождение ignore_index = True необходимо при передаче словаря или серии, иначе появится ошибка TypeError , например,
«TypeError: Может добавлять серию, только если ignore_index = True, или если у серии есть имя ».
Добавить строку в фрейм данных с помощью dataframe.append () и Series
Мы также можем передать серию в append (), чтобы добавить новую строку в фрейм данных.
См. следующий код.
# app. pynewDfObj = dfObj.append (pd.Series (['S Education', 'ASA', 'Otis'], index = dfObj.columns), ignore_index = True) print (newDfObj)
In В приведенном выше коде мы добавили серию в виде новой строки с тремя значениями.
См. полный код ниже.
# app.pyimport pandas as pdshows = [('Ведьмак', 'Генри Кавил', 'Геральт'), ('Очень странные дела', 'Милли Браун', 'Одиннадцать'), ('Конь Боджек ',' Уилл ',' Боджек '), (' Приключения Сабрины ',' Кирнан Шипка ',' Спеллман '), (' Карточный домик ',' Кевин Спейси ',' Фрэнк Андервуд ')] dfObj = pd. DataFrame (показывает, columns = ['Series', 'Name', 'Character Name']) newDfObj = dfObj.append (pd.Series (['S Education', 'ASA', 'Otis'], index = dfObj. columns), ignore_index = True) print (newDfObj)
Вывод
python3 app.py Имя серии Имя персонажа0 Ведьмак Генри Кавил Геральт1 Очень странные дела Милли Браун Одиннадцать2 Конь Боджек Уилл Боджек3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк Андервуд5 S Education ASA Otis
Итак, мы получили тот же результат, что и добавили один словарь как строку в фрейме данных.
Как добавить несколько строк в фрейм данных с помощью dataframe.append () и Series
До настоящего времени, мы добавили одну строку в фрейм данных. Теперь мы добавим несколько строк в фрейм данных, используя dataframe.append () и pandas series.
Мы можем передать список серий в dataframe.append () для добавления нескольких строк в dataframe.
Итак, давайте создадим список серий с теми же именами столбцов, что и фрейм данных.
См. следующий код.
# app.pylistOfSeries = [pd.Series (['S Education', 'ASA', 'Otis'], index = dfObj.columns), pd.Series (['Money Heist', 'Ursu Lolita', 'Tokyo'] , index = dfObj.columns), pd.Series (['Черное зеркало', 'Майли Сайрус', 'Эшли'], index = dfObj.columns)] newDfObj = dfObj.append (listOfSeries, ignore_index = True)
См. следующий полный код.
# app. pyimport pandas as pdshows = [('Ведьмак', 'Генри Кавил', 'Геральт'), ('Очень странные дела', 'Милли Браун', 'Одиннадцать'), ('Конь БоДжек', 'Уилл', 'Боджек '), (' Приключения Сабрины ',' Кирнан Шипка ',' Спеллман '), (' Карточный домик ',' Кевин Спейси ',' Фрэнк Андервуд ')] dfObj = pd.DataFrame (показывает, columns = [' Series ',' Name ',' Character Name ']) listOfSeries = [pd.Series ([' S Education ',' ASA ',' Otis '], index = dfObj.columns), pd.Series ([' Money Heist ',' Урсу Лолита ',' Токио '], index = dfObj.columns), pd.Series ([' Черное зеркало ',' Майли Сайрус ',' Эшли '], index = dfObj.columns)] newDfObj = dfObj. append (listOfSeries, ignore_index = True) print (newDfObj)
Вывод
python3 app.py Название серии Имя персонажа0 Ведьмак Генри Кавил Геральт1 Stranger Things Милли Браун Одиннадцать2 Конь Боджек Уилл Боджек3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк Андервуд5 S Education ASA Otis6 Ограбление денег Урсу Лолита Токио7 Черное зеркало Майли Сайрус Эшли
Добавьте строку из одного фрейма данных в другой фрейм данных с помощью pandas dataframe append ()
Давайте создадим другой фрейм данных.
# app.pyshows2 = [('S Education', 'ASA', 'Otis'), ('Money Heist', 'Ursu Lolita', 'Tokyo'), ('Black Mirror', 'Майли Сайрус', 'Эшли')] dfObj2 = pd.DataFrame (shows2, columns = ['Series', 'Name', 'Character Name'])
Теперь добавьте фрейм данных dfObj2 объект к объекту фрейма данных dfObj.
# app.pynewDfObj = dfObj.append (dfObj2, ignore_index = True)
См. следующий полный код.
# app.pyimport pandas as pdshows = [('Ведьмак', 'Генри Кавил', 'Геральт'), ('Очень странные дела', 'Милли Браун', 'Одиннадцать'), ('Конь Боджек ',' Уилл ',' Боджек '), (' Приключения Сабрины ',' Кирнан Шипка ',' Спеллман '), (' Карточный домик ',' Кевин Спейси ',' Фрэнк Андервуд ')] dfObj = pd. DataFrame (показывает, столбцы = ['Серия', 'Имя', 'Имя персонажа']) показывает2 = [('S Education', 'ASA', 'Отис'), ('Ограбление денег', 'Урсу Лолита', 'Tokyo'), ('Black Mirror', 'Miley Cyrus', 'Ashley')] dfObj2 = pd.DataFrame (shows2, columns = ['Series', 'Name', 'Character Name']) newDfObj = dfObj. append (dfObj2, ignore_index = True) print (newDfObj)
Вывод
приложение python3. py Имя серии Имя персонажа0 Ведьмак Генри Кавил Геральт1 Очень странные дела Милли Браун Одиннадцать2 Конь Боджек Уилл Боджек3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк Андервуд5 S Education ASA Otis6 Ограбление денег Урсу Лолита Токио7 Черное зеркало Майли Сайрус ЭшлиМы получим тот же результат, что и выше, но на этот раз мы добавили один фрейм данных в виде нескольких строк в другой фрейм данных.
Добавить строку в фрейм данных используя loc [] & list
Мы можем добавить новую строку, используя loc [] и список.
# app.pydfObj = pd.DataFrame ( показывает, столбцы = ['Серия', 'Имя', 'Имя персонажа']) dfObj.loc [5] = ['S Education', 'ASA', 'Otis']Мы добавляют новую строку в фрейм данных с индексом 5.
См. полный код.
# app.pyimport pandas as pdshows = [('Ведьмак', 'Генри Кавил', 'Геральт'), ('Очень странные дела', 'Милли Браун', 'Одиннадцать'), ('Конь БоДжек', 'Уилл', 'БоДжек'), ('Приключения Сабрины', 'Кирнан S hipka ',' Spellman '), (' Карточный домик ',' Кевин Спейси ',' Фрэнк Андервуд ')] dfObj = pd.DataFrame (shows, columns = [' Series ',' Name ',' Character Name '] ) dfObj.loc [5] = ['S Education', 'ASA', 'Otis'] print (dfObj)Если во фрейме данных уже есть строка с именем индекса 5, тогда это будет замените содержимое этой строки. В противном случае будет добавлена новая строка.
Вывод
python3 app.py Имя серии Имя персонажа0 Ведьмак Генри Кавил Геральт1 Stranger Things Милли Браун Одиннадцать2 Конь Боджек Уилл Боджек3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк Андервуд5 S Education ASA OtisДобавьте строку в фрейм данных в позицию индекса с помощью iloc []
Мы можем добавить новую строку в фрейм данных в определенной позиции индекса, используя iloc [].
# app.pydfObj.iloc [ 2] = ['S Education', 'ASA', 'Otis']См. Следующий код.
# app.pyimport pandas as pdshows = [( 'Ведьмак', 'Генри Кавил', 'Геральт'), ('Очень странные дела', 'Милли Браун', 'Одиннадцать'), ('Конь БоДжек', 'Уилл', 'Боджек'), ('Приключения Сабрина ',' Кирнан Шипка ',' Спеллман '), (' Карточный домик ',' Кевин Спейси ',' Фрэнк Андервуд ')] dfObj = pd.DataFrame (shows, columns = [' Series ',' Name ', 'Имя персонажа']) dfObj.iloc [2] = ['S Education', ' ASA ',' Otis '] print (dfObj)Он заменит строку с индексом 2. В нашем примере он заменит BoJack Horseman.
приложение python3. py Серии Имя Имя персонажа0 Ведьмак Генри Кавил Геральт1 Очень странные дела Милли Браун Eleven2 S Education ASA Otis3 Приключения Сабрины Кирнан Шипка Спеллман4 Карточный домик Кевин Спейси Фрэнк АндервудЗаключение
Функция append () фрейма данных Python Pandas используется для добавления отдельной серии, словаря, фрейма данных в виде строки в фрейм данных. Мы также можем добавить несколько строк.
Мы также можем использовать loc [] и iloc [] для изменения существующей строки или добавления новой строки.
Наконец, Python Pandas: Как добавлять строки в DataFrame окончено.
См. Также
Pandas set_index ()
Логическое индексирование Pandas
Pandas sort_values ()
Pandas value_counts ()