我們有一個包含人員記錄的工作表的Excel文件。Excel正規表達式,還是導出到Python? ; Python中的「Vlookup」?
1.電話號碼衛生
其中一個字段是一個電話號碼字段,其中包含格式如電話號碼:
+XX(Y)ZZZZ-ZZZZ
(其中X,Y和Z是整數)。
也有一些記錄具有較少的數字,如:
+XX(Y)ZZZ-ZZZZ
。有些人真的搞砸了格式:
+XX(Y)ZZZZ-ZZZZ/ZZZZ
或:
ZZZZZZZZ
我們需要將這些全部清理成以下格式:
0YZZZZZZZZ (or OYZZZZZZ with those with less digits).
2.監事詳細
每個人填寫也有一個主管,給出的數字標識。我們需要做一個查詢來獲取該主管的姓名和電子郵件地址,並將其添加到該行。
該查找將首先在同一張工作表上(即搜索自己),然後可以更多人員回退到另一個工作簿。
3.方法?
對於第一個問題,我想在Excel/VBA中以某種方式使用正則表達式來進行解析。我的Excel-fu不是最好的,但我想我可以學習......哈哈。這一點上的任何特定點?
但是,我最好將XLS導出爲CSV(例如使用xlrd),然後使用Python修復電話號碼?
對於第二種方法,我想在Excel中使用vlookups來拉入數據,並以某種方式讓它通過,首先搜索自身,然後在外部工作簿上,然後將錯誤文本。不知道如何做最後一部分。
但是,如果我碰巧選擇導出爲CSV並在Python中執行此操作,那麼執行vlookup的有效方法是什麼? (我應該轉換成一個字典,或者只是重複嗎?或者有沒有更好的,或者更地道的方式?)
乾杯, 維克多
你的問題空間很大,用更直接的問題提出多個問題可能會更好,所以我們可以幫助你。很多這些決定可以根據您的偏好進行。 – dlamotte 2010-05-05 01:38:54
@xyld:嗯,我應該刪除這個問題,然後把它分成兩個問題嗎?這只是我選擇的一種方式(Python與Excel/VBA),理想情況下它可以同時處理這兩種方法。謝謝,Victor – victorhooi 2010-05-05 01:57:25
保持開放不會造成任何傷害,但可能會轉載您對特定方法的具體問題。 – dlamotte 2010-05-05 02:05:47