Как редактировать ячейки в Pandas DataFrame без заголовка? - PullRequest
0 голосов
/ 26 марта 2019

У меня есть Pandas DataFrame без заголовка, и мне нужно отредактировать все ячейки.

Ячейки состоят из названия продукта и определенного номера, например:

'Pasta=3'

Пример:

      0           1               2              3    
0  'Pasta=3'   'Soup=2'       'Potatoes=4'     None
1  'Cheese=1'  'Milk=2'        None            None
2  'Eggs=6'    'Cleaners=1'   'Beef=2'        'Fish=1'
3  'Apples=3'  'Banana=2'     'Pear=4'         None

Теперь я должен удалить символ равенства и число.Итак, если у меня есть

'Pasta=3' 

, я должен удалить '= 3', чтобы получить

'Pasta'

Как я могу это сделать, если у фрейма данных нет заголовка?

Спасибо.

1 Ответ

2 голосов
/ 26 марта 2019

Прежде всего, они имеют «заголовок» (то есть имя столбца).В вашем случае это либо 0, либо "0" (целое число 0 или строка 0).Таким образом, вы все равно можете получить доступ к столбцам с помощью df[0] или df["0"] в зависимости от того, является ли это целое число или строка.

Во-вторых, чтобы удалить все после =, просто используйте df.replace для каждого столбца:regex=True

df.replace(r'=.*','', regex=True)

Вы также можете использовать apply (медленнее, предпочитайте первый метод)

df.apply(lambda s: s.str.replace(r'=.*',''))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...