1. 程式人生 > >2017.05.09回顧 pandas使用記錄

2017.05.09回顧 pandas使用記錄

1、給決策引擎P2做了一個偽介面方便測試,做完偽介面還剩1個多小時,我他媽幹什麼了呢?我怎麼想不起了

2、下午主要就是思考Simon留下的那個問題,幾乎思考了一下午,把結論寫在了上次挖坑的地方

3、下午同時也解決了加解密的問題,那個軟體可以授權程序就ok了

4、晚上主要是寫程式解決最佳同盾多頭閾值尋找的問題,在這個過程中,我再一次熟悉了pandas的很多用法

  • 讀取csv成dataframe是read_csv
  • 按行號列號選擇是df.iloc[行,列],如果是df[:,-1]這樣一般是把標籤列選擇出來,這樣選擇一列,型別就是series
  • 然後就是篩選,pandas的篩選方法非常簡單,是生成bool矩陣,比如我的程式中用到的df[(df['d7'] > 8) | (df['d7'] > 12) | (df['d7'] > 25)],裡面是一個行列數同df的bool矩陣,所以或不能用or,必須用二進位制位的或運算也就是|,同理and不能用and,需要用&,取反不能用not需要用~
  • 篩選出來的作為一個集合,剩下的作為一個集合,這個補集,我搜索了一下,沒找到方法,我最後是把篩選條件取反獲得一個集合,與前面的集合恰好就是互補的
  • 列的選擇,df.列名或者df[列名],檢視df的所有列名可以使用df.columns
  • df仍然有shape方法返回df的行列數
  • series去重可以用set(df['d7'])
  • 寫一個空的dataframe,然後不斷新增行,我昨天使用的一種可行的辦法是這樣的,其實每一個dataframe又可以看成是一個list,含很多相同鍵的dict,所以就把dict不斷append到一個list,最後把這個list用pd.DataFrame()直接轉化成df,最後可以把df.to_csv輸出成csv方便檢視和分析
  • series是可以迭代的結構,也可以直接SUM
  • df也可以用len(df)來計算行數
  • 還有一種方法寫個空dataframe,然後不斷新增行,示例程式碼如下:
    result_df = pd.DataFrame(columns=('gini_split','i','j','k','n1','n2','br_bad','br_good'))
    row = pd.DataFrame([{'gini_split':1,'i':2,'j':3,'k':4,'n1':5,'n2':6,'br_bad':7,'br_good':8},])
    result_df = result_df.append(row,ignore_index = True)
    建空dataframe的時候只建列名,然後用DataFrame去轉換含一個dict的list,然後append到空的df上,這裡要小心一點兒,我昨天在這裡淺嘗輒止,因為我append後並沒像現在這樣重新賦值,這個dataframe不像list的append會自動更新改變,這個還要重新賦值一次,這個方法也是可行的
最後,關於這個程式還可以挖個坑,就是全部儲存效率很低?如果用比較的方式找到最佳的top1或者top5這樣會好一些嗎?應該也好不好哪裡去吧?畢竟還有比較一次再做儲存,top5的儲存方式還要想一想,感覺效率不比我這個高啊,還有一點就是最後我是匯出到csv,用excel做排序處理,可以想象怎麼使用pandas的函式直接進行排序

相關推薦

2017.05.09回顧 pandas使用記錄

1、給決策引擎P2做了一個偽介面方便測試,做完偽介面還剩1個多小時,我他媽幹什麼了呢?我怎麼想不起了 2、下午主要就是思考Simon留下的那個問題,幾乎思考了一下午,把結論寫在了上次挖坑的地方 3、下午同時也解決了加解密的問題,那個軟體可以授權程序就ok了 4、晚上主要是寫

英語每日句子 2017-05-09

即使 int ace 發出 describe iter could not enc entire 1、The entire family was staring at him. 全家人都盯著他 註:stare at 凝視、盯著 2、Applaus

1-新浪微博爬蟲-(2017-05-09

1 爬使用者的資訊 1-1 哪裡找cookies 1-2 哪裡找使用者資訊 2 爬使用者發過的所有部落格 2

ffmpeg原始碼簡析(十三)ffmpeg API變更 2009-03-01—— 2017-05-09變更

The last version increases were: libavcodec: 2015-08-28 libavdevice: 2015-08-28 libavfilter: 2015-08-28 libavformat: 2015-08-28 libavresample: 201

2017.05.19回顧 TSS = ESS + RSS證明

1、對風控描述文件進行了修改,交付給了相關同事 2、然後就是把Ken的介面加入到合作方決策引擎中,沒什麼問題,還是老套路,只是對於AS前置模型的情況進行了一些小處理 3、下午我記得還Henry微信溝通了一下,放寬了AS某個渠道的客戶 4、下午還研究了手機三要素的問題,發現根

2017.05.06FreeCodeCamp編程之JS面向對象編程學習

支持 concat lte red true 轉化 指向 -1 方法的參數 1.構造對象的方法: ① ②使用構造函數來創建對象。構造函數 通常使用大寫字母開頭,以便把自己和其他普通函數區別開。 在 構造函數 中, this 指向被此 構造函數 創建出來的 對象 。

session與cookie-----2017-05-08

之前 控制 uid -- 5-0 php代碼 會話 默認 安全性 會話控制:目的是記錄不同用戶身份。 1、session:有實效性 特點: (1)存在在服務器 (2)每個用戶都會存一份 (3)可以存儲任意類型的數據 優點:安全性高 缺點:服務器壓力過大 2、

2017/05/08學習筆記

信號量 存儲器 運行時 程序代碼 數據位 內容 提高 加載 數據區 我們將處理器的指令集架構和處理器的微體系結構區分開來:指令集架構描述的是每條機器代碼效果,而微體系結構描述的是處理器實際上是如何實現的。 運行程序 當我們在鍵盤上輸入字符串./hello後,shell程序將

用ajax判斷用戶是否已存在?----2017-05-12

過去 函數 input 技術分享 itl 提交 click ext 數據 首先在用ajax之前,先說一下JSON: JSON:javascript object notation js對象標記 對於json,我們只需要知道如何定義json?如何輸出?怎麽遍歷? 1、定義

2017-05-06隨記:基礎命令和符號

基礎命令2017-05-06基礎命令:1.mkdir 創建目錄 make directory -p 遞歸創建2.ls 顯示目錄中的內容,列表 list -l (小寫字母L) 顯示詳細的信息 3.pwd 顯示當前你所在的位置

老男孩教育每日一題-2017-05-15-說說你在vi/vim中常用的命令或快捷鍵

vi-vim編輯器 linux編輯器 每日一題 1.題目老男孩教育每日一題-2017-05-15-說說你在vi/vim中常用的命令或快捷鍵2.參考答案01:學會在vim中查詢幫助:help 或:h即可 :help G :help :wq02.vi/vim 使用最基本方法第一個裏程碑-使用vi打開o

2017-05-17】WebForm

應用 用戶 運行機制 net js代碼 客戶 asp.net 執行 intern ASP.NET分為:ASP.NET WebForm和ASP.NET MVC 運行機制:C/S(客戶端應用程序)代碼在客戶端執行,僅僅去服務器上的數據庫存取數據 B/S(網站應用程序)程序代

2017-05-17 js動態生成輪播圖小圓點

輪播圖 鼠標 borde images author eight 復習 innerhtml pad 從今天開始,把自己做的筆記轉移到博客園: 今晚復習了一下動態創建輪播圖小圓點做了一下小的筆記: 1 <!DOCTYPE html> 2 <html l

2017-05-18】WebForm的Repeater控件和一些簡單控件

tar bsp textbox span -1 使用 str .text 內容 一、Repeater控件 1、 <%@ %> - 這裏面寫一些聲明和引用的 <% %> - 編寫C#代碼的 <%= %> - 往界面上輸出一個變量的值 &l

nodeJS中的包 npm install http://www.cnblogs.com/xiaohuochai/archive/2017/05/20/6882027.html

.html 方法 href 對象 inux gif 例子 配置文件 安裝 前面的話   Node組織了自身的核心模塊,也使得第三方文件模塊可以有序地編寫和使用。但是在第三方模塊中,模塊與模塊之間仍然是散列在各地的,相互之間不能直接引用。而在模塊之外,包和NPM則是將模塊

2017-05-21】WebForm跨頁面傳值取值、C#服務端跳轉頁面、 Button的OnClientClick屬性、Js中getAttribute和超鏈接點擊彈出警示框。

代碼 height delet update size 內存 客戶 bar win 一、跨頁面傳值和取值: 1、QueryString - url傳值,地址傳值 優缺點:不占用服務器內存;保密性差,傳遞長度有限。 通過跳轉頁面路徑進行傳值,方式: href="地址?ke

2017-05-22】WebForm內置對象:Application和ViewState、Repeater的Command用法

操作數 傳值 rep 服務器 創建 bject bsp strong () 一、內置對象 1、Application 存貯在服務器端,占用服務器內存生命周期:永久 所有人訪問的都是這一個對象 傳值:傳的是object類型可以傳對象。 string s =TextBox1.T

2017-05-30】WebForm文件上傳

clas pre ext config onf javascrip col cep con 用 FileUpload控件進行上傳文件。 <asp:FileUpload ID="FileUpload1" runat="server" /> 屬性 accept="

2017-05-31

類型 reg 大小 函數 變量類型 bst ace sub tolower 今天的學習內容:   變量類型函數     is_int() is_float() is_bool() is_string() is_array() is_object() is_resource(

MS17-010 EternalBlue SMB Remote Windows Kernel Pool Corruption 2017-05-18 16:45

oca spool hub per bash .exe xpl del all wget "https://raw.githubusercontent.com/rapid7/metasploit-framework/6d81ca42087efd6548bfcf924172