原创 pandas, datetime 格式化輸出日期

raw_data["TradeDate"].head() 0 2020-02-22 14:01:23.451000 1 2020-02-20 16:40:56.190000 2 2020-02-20 16:11:16

原创 長表寬表的轉換

原文傳送門:https://www.cnblogs.com/zlslch/p/8644585.html   處理長表和寬表類的轉換的時候之前總是自己寫底層 但是底層寫得太爛了,轉換的速度總是不滿意,pandas 的不斷concat過程耗費

原创 pivot_table 源碼解析

所以爲什麼pivot_table會快呢? 首先concat在不斷拼接的過程耗時確實是越來越長的,這個底層暫時沒有了解 但是pivot_table是怎麼做長表寬表的轉換呢? 其實pivot_table是一個透視表,他之所有能做長寬表的數據轉

原创 1. NLP基礎 規則切詞--正向,反向,雙向最大匹配法

1、正向最大匹配 正向最大匹配首先你要有一個匹配詞庫,你知道你匹配詞庫中長度最長的詞的長度,假設是3 你取出頭3個字去匹配詞庫,如果匹配不上就取頭2個字,直到你能匹配上,你的起始指針就向後移動。 class MM(): def

原创 0.NLP基礎之正則表達式

正則表達式在NLP中有廣泛的運用,一般用在文本清洗和過濾中,可以把我們的關注的文本內容選取出來再利用機器學習的技術。 否則我們一股腦未經篩選,將所有的文本丟到模型中,模型會被大量的噪聲干擾。 示例: import re text_str

原创 sublime的正則表達式分組

正則表達式其實都一樣,不同語言不同工具取分組的手段不同。 sumlime取分組是用\1 類似python的group(1) 如 abc 可以用 a(.*) 來匹配 a\1c來表示在括號內的分組保留下來並在後面加上c 結果 abcc \2就

原创 pandas 字符串包含判斷

今天同事問我如果我要判斷pandas中某列中的值是否包含某個特定字符串該如何做。 我以前寫過但是楞了一下,因此好好記錄下來   df["columns_1"] = df["columns"].apply(lambda x: x.uppe

原创 np.timedelata64計算時間差

由於這個用法老是忘記我就還是寫下來記錄一下。 在python生成時間差這個值的時候,用pd.to_datetime相減有的時候後面會帶一個單位,有的是days,有的是時分秒。 再用字符串處理也是可以的,但是np.timedelta64可以

原创 Pandas移動平均類指數加工

temp = pd.DataFrame([1,2,3,4,5],columns=["test"]) 建立一個測試數據 >>> temp test 0 1 1 2 2 3 3 4 4 5 p

原创 數字字符串補0方法

有的時候想生成連續的數字字符串,但是生成數字的時候前面沒有補上0 用下面這個方法就可以補0了 i = str(i) i = i.zfill(4) for i in range(10): print(str(i).zfill(4

原创 pandas生成連續日期

因爲量化模型有的時間沒有發生交易,在訂單系統中時間有時候會有斷點。需要生成連續的時間序列。 >>> pd.date_range(start='2020-02-20 12:24:44', end='2020-02-20 12:25:10'

原创 mysql 分組字符串拼接——group_concat

  對分組的user_id 進行dtype的拼接  

原创 os庫的小運用

os.getcwd() 可以獲取當前代碼的存放路勁 不太習慣用mac。。。 os.listdir(path) 可以查看path下面的所有文件名

原创 presto 中格式轉換的用法

cast(目標字段 as 目標格式)

原创 獲取路徑下的所有文件名 decode bytes in position 2-3: truncated \UXXXXXXXX escape

def get_all_filename_list(path): file_name_list = os.listdir(path) return file_name_listpath 路徑前記得加r表示原始路徑,不然會報