В Swift 2.2 вам может понадобиться передать ваш массив NSArray для использования компонентовJoinedByString (",")
let stringWithCommas = (yourArray as NSArray).componentsJoinedByString(",")
Вы можете удалить все ненулевые цифры, используя re.sub()
:
value = re.sub(r"[^0-9]+", "", value)
Для этого вам не нужно регулярное выражение. Это должно работать:
df['col'] = df['col'].astype(str).convert_objects(convert_numeric=True)
Вы можете использовать Series.str.replace
:
import pandas as pd
df = pd.DataFrame(['$40,000*','$40000 conditions attached'], columns=['P'])
print(df)
# P
# 0 $40,000*
# 1 $40000 conditions attached
df['P'] = df['P'].str.replace(r'\D+', '').astype('int')
print(df)
дает
P
0 40000
1 40000
, поскольку \D
соответствует любому не десятичному значению значный .
Вы можете использовать метод замены pandas; также вы можете захотеть сохранить разделитель тысяч ',' и разделитель десятичных знаков '.'
import pandas as pd
df = pd.DataFrame(['$40,000.32*','$40000 conditions attached'], columns=['pricing'])
df['pricing'].replace(to_replace="\$([0-9,\.]+).*", value=r"\1", regex=True, inplace=True)
print(df)
pricing
0 40,000.32
1 40000
\D+
будет наименьшим: -P – Sabuj Hassan 23 March 2014 в 09:56df['pricing'] = re.sub(r"[^0-9]+", "", df['pricing'])
. – Jerry 23 March 2014 в 10:14