Как найти вхождение подстроки в столбце dataframe python(pandas)?

462 просмотра
0
0 Комментариев

Задача такова: необходимо найти вхождение подстроки в каждой строке столбца Name, DataFrame называется data. Делаю так, но ничего не получается:

data.Name.index(',')

Объясните, пожалуйста, как это можно реализовать!


Добавить комментарий

2 Answers

Python Опубликовано 12.12.2018
0

Чтобы индекс подстроки в каждой строке колонки Name найти:

>>> import pandas as pd
>>> df = pd.DataFrame(dict(Name=['abc', 'def']))
>>> df.Name.str.find('b')
0    1
1   -1
Name: Name, dtype: int64

Добавить комментарий
0

Для того, чтобы вычленить часть строки вам не нужно знать индекс ее начала.

Исходный DataFrame:

In [30]: df
Out[30]:
                 name
0    яблоко, апельсин
1  банан, киви, манго

разбиваем по запятым, возвращаем первый элемент:

In [31]: df.name.str.split(r',\s*').str[0]
Out[31]:
0    яблоко
1     банан
Name: name, dtype: object

или парсим все до первой запятой:

In [32]: df.name.str.extract(r'([^,]*)', expand=False)
Out[32]:
0    яблоко
1     банан
Name: name, dtype: object

Добавить комментарий
Напишите свой ответ на данный вопрос.
Scroll Up