1. 程式人生 > >2017.06.14回顧 dtype相關 Series平均數 type_of_target

2017.06.14回顧 dtype相關 Series平均數 type_of_target

1、Series計算平均數,df[column].mean()

2、上午給同事講了很久的關於驗證四變數模型少掉兩個變數仍具備有效性的證明,這個過程中也被多次打斷

3、講完開始寫昨日總結

4、ndarray只能有一種資料型別,就是其中每個元素的型別,不能說每一列一個型別

5、np.sctypeDict可以查dtype型別dict,有很多不同的表達方法,其實是說的一個類,np.str_和np.string_都是numpy.string_型別,np.str就是python的str類

6、pandas繼承了numpy的dtype,對於型別為string的列,顯示出來dtype就是object,進一步,為什麼是object?因為array記憶體中儲存的並不是str型別,因為str型別不固定,儲存的是一個pointer,指向字串的起始位置。

7、似乎object還有一種表達是dtype('o'),是哪種情況下的輸出,我記不清了

8、關於那個bug,我認為就是dataframe因為賦值,改變了列的型別為字串,然後用np.array轉換的時候,記憶體空間是等長的,所以賦值被截斷,這似乎又和第6點儲存pointer有些衝突,不細究了,一種解決方案是資料轉換的時候還可以指定長度,某些情況下輸出的時候就用S20這種,哦,我似乎明白了,對於可以設定等長的字串,這個時候dtype就可以正常顯示,對於不等長字串就是儲存pointer。ndarray改變型別的時候可以指定長度,x.astype((np.str_,20))。一方面改變長度可以解決,另外一種我直接把dataframe作為輸入,因為後期,我必定會開發一個基於dataframe的工具箱,稍微了改了下dataframe直接作為輸入,沒有問題,bug解決

9、type_of_target,這個文件,我沒看到,但是看到了原始碼,大概原理就是根據unique值來做判斷

10、瞭解了下京東的測試相關對接事宜,又去了解了大資料競賽等

11、最後一點時間,發現IV工具箱並沒有用純dataframe的方式來實現,嘗試全部改成dataframe,最後又遇到了dataframe構造問題

最後,昨天的鍛鍊時間不足,差點未能堅持,加油,執行力!