Очистить строковые данные в указанном Pandas Dataframe

| | | |

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

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


# import pandas as pd

import pandas as pd


# Создать фрейм данных

df = pd.DataFrame ({ `Дата` : [ `10/2/2011` , ` 11/2/2011` , `12/2/2011` , < код с lass ="string ">` 13/2 / 2011` ],

`Product` : [ `UMbreLla` , ` maTress` , `BaDmintoN` , `Shuttle` ],

` Updated_Price` : [ 1250 , 1450 , 1550 , 400 ],

` Скидка` : [ 10 , 8 , 15 , 10 ]})


# Печать фрейма данных

print (df)

Вывод:

Теперь мы напишем собственную пользовательскую функцию для решения этой проблемы.


def Format_data (df):

# перебрать все строки

for i in range (df.shape [ 0 ]):


# переназначить значения ‚Äã‚Äã в столбец product

# сначала удалить пробелы с помощью функции strip()

# затем мы используем функцию capitalize()

df. iat [i, 1 ] = df.iat [i, 1 ]. полоска (). Capitalize ( )


# Перейдем к вызову функции
Format_data (df )


# Печать кадра данных

print (df)

Вывод:

Решение № 2: Теперь мы увидим лучший и более эффективный подход с использованием Pandas функция DataFrame.apply() .


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

import pandas as pd


# Создать фрейм данных

df = pd.DataFrame ( {` ` Date` : [ `10/2/2011` , `11/2/2011` , `12/2/2011` , ` 13/2 / 2011` ],

`Product` : [ `UMbreLla` , ` maTress` , `BaDmintoN` , `Shuttle` ],

`Updated_Price` : [ 1250 , 1450 , 1550 , 400 ],

`Скидка` : [ 10 , 8 , 15 , 10 ]})


# Печать фрейм данных

print (df)

Вывод:

Давайте воспользуемся DataFrame.apply() Pandas DataFrame.apply() для форматирования названий продуктов в нужном формате. Внутри функции Pandas DataFrame.apply() мы будем использовать лямбда-функцию.


# Использование Функция df.apply() для столбца product

df [ `Product` ] = df [ `Продукт ` ]. применить ( lambda x: x.strip ().capitalize ())


# Печать фрейма данных

print (df)

Вывод :

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method