Этот вопрос задавали раньше, но я все еще не могу полностью выполнить эту работу. У меня есть следующие примеры строк:
"Transfer to Retirement Rsvs-MA FX .11"
"Opening Balance FX 342,536,002.63"
"VA 85.85"
"VB .00"
"Manual Adjustment FX 6,838.36-"
Я хотел бы извлечь сумму долларов США / центов из строк в отдельный столбец фрейма данных. У меня есть следующее выражение регулярного выражения:
rx = (r"(\$?(?:\d+,)*\d+\.\d+\-?)")
, и я попытался создать столбец в кадре данных (df) под названием «доллары»
df2['dollars']=df2['description'].str.extract(rx)
Он работает по большей части, за исключением для значений вроде .11 или .00, и в этом случае возвращается nan. Как мне изменить это выражение, чтобы оно работало за центы без начальных долларов?
Помощь в этом приветствуется!
string dollars
Transfer to Retirement Rsvs-MA FX .11 0.11
Opening Balance FX 342,536,002.63 342,536,002.63
VA 85.85 85.85
VB .00 .00
Manual Adjustment FX 6,838.36- 6,836-