Pandas: Упражнение 30 по строкам и регулярным выражениям с решением
Напишите программу Pandas для извлечения только не буквенно-цифровых символов из указанного столбца данного DataFrame.
Пример решения:
Код Python:
импортировать панды как pdimport или как repd.set_option ('display.max_columns', 10) df = pd.DataFrame ({'company_code': ['c0001 #', '[email protected] ^ 2', '$ c0003', 'c0003', '& c0004'], 'год': ['1800 год', '1700 год', 'год 2300', '1900 год', 'год 2200']}) print ("Исходный DataFrame: ") print (df) def find_nonalpha (текст): result = re.findall (" [^ A-Za-z0-9] ", text) return resultdf ['nonalpha'] = df ['company_code']. apply (lambda x: find_nonalpha (x)) print (" Извлечение только не буквенно-цифровых символов из company_code:") print (df)
Пример вывода:
Исходный фрейм данных: company_code year0 c0001 # year 18001 [email protected] ^ 2 year 17002 $ c0003 year 23003 c0003 year 19004 & c0004 year 2200 Извлечение только не буквенно-цифровых символов из company_code: company_code year nonalpha0 c0001 # year 1800 [#] 1 [электронная почта защищена] ^ 2 год 1700 [@, ^] 2 $ c0003 год 2300 [$] 3 c0003 год 1900 [] 4 & c0004 йен ar 2200 [&]
Редактор кода Python: