#python #pandas
Вопрос:
Цель состоит в том , чтобы удалить 0
из столбцов с ячейкой ↑ 0
и привести в ↑
. Такой, что
Data myda xda
0 ↑ * ↑ 0 0
1 * * 100
2 ↑ ** ↑ 0 0.05
в
Data myda xda
0 ↑ * ↑ 0
1 * * 100
2 ↑ ** ↑ 0.05
Код реализован
import pandas as pd
pat = r'^?(0)
Но это не возвращает ожидаемый результат
Комментарии:
1.
df.myda = df.myda.str.rstrip('0')
может быть?
Ответ №1:
Расширение к предложению @sammy, применение этого ко всем столбцам может быть достигнуто с помощью lambda
df = pd.DataFrame ( {'Data': ['↑ *', '*', '↑ **'],
'myda': ['↑ 0', '*', '↑ 0'],
'xda': ['0', '100', '0.05']} )
df[df.columns] = df.apply(lambda x: x.str.rstrip('0'))
Выход
Data myda xda
0 ↑ * ↑
1 * * 1
2 ↑ ** ↑ 0.05
df = pd.DataFrame ( {'Data': ['↑ *', '*', '↑ **'],
'myda': ['↑ 0', '*', '↑ 0'],
'xda': ['0', '100', '0.05']} )
df=df.replace(dict(string={pat: ''}), regex=True)
Но это не возвращает ожидаемый результат
Комментарии:
1.
df.myda = df.myda.str.rstrip('0')
может быть?
Ответ №1:
Расширение к предложению @sammy, применение этого ко всем столбцам может быть достигнуто с помощью lambda
Выход