2017-03-23 53 views
0

我正在研究熊貓中5000萬行的數據框。我需要遍歷一列並提取文本的特定部分。該列具有以4或5個模式定義的字符串值。我需要提取文本並替換原始字符串。我正在使用apply函數和正則表達式。這需要我接近一天才能執行。我覺得這是低效的。或者這是正常的?有沒有一種方法我錯過了讓它更快?在熊貓上工作5000萬行(python)

+0

它通常不贊成粘貼一堆代碼並說「幫幫我」!更好的是,請閱讀*** [MCVE](http://stackoverflow.com/help/mcve)***並編輯您的問題,並提供可幫助他人幫助您的其他信息。 – piRSquared

回答

0

這裏的文檔:

http://pandas.pydata.org/pandas-docs/stable/indexing.html

http://pandas.pydata.org/pandas-docs/stable/text.html#extracting-substrings

替換文本很容易。沒有一天是不正常的。擺脫您在本文早期版本中的所有列表。你不需要它們。如果需要更多空間用於數據,請在數據框上添加列。瞭解數據類型以使數據變小。

import pandas as pd 
df = pd.DataFrame() #import your data at this step 
df['column'].str.extract(regex_thingy_here) 

我會寫更多,但你把代碼放下。

+0

非常感謝您的意見。它工作得很好,現在我可以在5分鐘內完成工作。我使用str.extract函數作爲最後一步,但對於輕鬆完成工作很重要。再次感謝!對不起,我的迴應延遲。 – Vatsan28

+0

很高興工作。感謝您的反饋。 – Back2Basics