2015-03-11 13 views

cevap

35

Kullanım vektörleştirilmiş str yöntem replace:

In [30]: 

df['range'] = df['range'].str.replace(',','-') 
df 
Out[30]: 
     range 
0 (2-30) 
1 (50-290) 

DÜZENLEME Yani

size ne denedik bakmak ve onu neden işe yaramadığını eğer: den

df['range'].replace(',','-',inplace=True) 

docs bu başlığı görüyoruz:

str veya regex: Tam olarak str değerleri eşleşmiyor çünkü

Yani, yedek oluştuğunda, aşağıdaki ile karşılaştırmak to_replace değerle değiştirilecektir eşleşen dize: str

In [43]: 

df = pd.DataFrame({'range':['(2,30)',',']}) 
df['range'].replace(',','-', inplace=True) 
df['range'] 
Out[43]: 
0 (2,30) 
1   - 
Name: range, dtype: object 

Burada ikinci satırda tam bir eşleşme elde ettik ve değiştirme gerçekleşir.

+0

@EdChum evet bu harika olurdu merak ediyorum! Bu bir dize yerine olduğu için mi? – UserYmY

+0

Downvoter açıklaması açık – EdChum

+0

Inplace API'sinin büyüklüğünü eşleştirmenin bir yolu var mı? (veri çerçevesi veya sütun adları uzunsa iyi olabilir) – maxymoo

İlgili konular