1
因此,我有一個函數replaceMonth(string),它只是一系列if語句,它返回從pandas數據框中的列派生的字符串。然後我需要用派生的字符串替換原始字符串。將函數應用於熊貓數據框中的列
數據幀的定義是這樣的:
Index ID Year DSFS DrugCount
0 111111 Y1 3- 4 months 1
有大約在數據幀80K行。我需要做的是用replaceMonth(string)函數的結果替換DSFS列中的內容。因此,如果,例如,第一行DSFS的值是'3-4個月',如果我通過replaceMonth()運行該字符串,它會給我'_3_4'作爲返回值。然後我需要將數據幀中的值從'3 - 4個月'更改爲'_3_4'。
我一直在試圖使用應用在數據幀,但我得到任何的語法錯誤或不明白它在做什麼正確的,就像這樣:
dataframe['DSFS'].apply(replaceMonth(dataframe['DSFS']))
這並不是合適的戒指給我但我不確定我在哪搞亂它。我對Python相當陌生,所以它可能是語法。 :)
任何幫助非常感謝!
該死,這是更直接,比我想象的要。 :) 工作完美!謝謝! – mswhitehead
@piRSquared是否有辦法在沒有apply()返回的確切副本的情況下執行相同的操作?提前致謝。 – Hei