Я хочу удалить ненужные символы из столбца в моем фрейме данных.Как мне это сделать?(Я использую Python) - PullRequest
0 голосов
/ 27 июня 2019

[1]: https://i.stack.imgur.com/FYgSp.png [1]

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

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

Вот код, который я пробовал

df['prices']=df['prices'].map(lambda x: x.strip('.,'))

Это не сработало.Я также попробовал следующее

df['prices']=df['prices'].map(lambda x: x.lstrip('.,').rstrip('CA'))

, которое также не работало.

Что бы вы предложили мне сделать?Если бы вы могли также объяснить, почему вы используете код, который вы используете, то это очень помогло бы мне в изучении языка Python.:)

1 Ответ

0 голосов
/ 27 июня 2019

Попробуйте использовать:

df['prices']=df['prices'].apply(lambda x: re.sub('[^0-9]+', ‘’, x))

Редактировать: Я пропустил ту часть, где вы сказали, что хотите только канадскую валюту. Таким образом, предполагая, что средняя часть (CA1234) является форматом для канадской валюты,

df['prices']=df['prices'].apply(lambda x: float(x.split(“,”)[1][2:]))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...