我需要編輯列中的所有3000個電話號碼,以便撥號代碼位於括號內。例如由: 49 089/514 6977 - 18 到: 49(089)514 6977 - 18使用Python處理單元格中的數據(Openrefine)
林與熊貓猜測應該是可能的。我使用開放精煉?
我需要編輯列中的所有3000個電話號碼,以便撥號代碼位於括號內。例如由: 49 089/514 6977 - 18 到: 49(089)514 6977 - 18使用Python處理單元格中的數據(Openrefine)
林與熊貓猜測應該是可能的。我使用開放精煉?
嘗試這樣的:
df['Column_Name'] = df['Column_Name'].apply(lambda x: x[:4]+'('+x[4:7]+')'+x[9:])
如果你有加後單人和雙人,甚至三位數,去這樣的:
df['Column_Name'] = df['Column_Name'].apply(lambda x: ' '.join([part if i != 1 else '(' + part + ')' for i, part in enumerate(x.split()) if i != 2]))
如果有的正確寫入,您可以使用:
df['Column_Name'] = df['Column_Name'].apply(lambda x: ' '.join([part if i != 1 else '(' + part + ')' for i, part in enumerate(x.split()) if i != 2]) if '(' not in x else x)
Ettore你天才!他們是一個目錄,或者我可以查找openrefine這樣的函數嗎? – Mac
[官方文檔](https://github.com/OpenRefine/OpenRefine/wiki/Documentation-For-Users)可能是最好的開始,尤其是頁面「Grel string functions」和「recipes」。但是這個文檔比Python當然要少得多。請注意,如果您使用該語言比使用GREL更舒適,則Open Refine也可以使用Python/Jython。 –
'S [:4] + '(' + S [4:7] + ')' + S [7:]' –