2023年6月20日 星期二

跟著書做~一行指令學 python,用機器學習掌握人工智慧

 跟著書做,有問題的就會寫下來@@之前還有一本"一行指令學Python : 用Pandas掌握商務大數據分析"

用colab試試看~~

第一章:python基本功能介紹

  1. 寫個函數來運用,慢慢地導入到pandas。
  2. df.columns 表格的最上面(欄位的說明,數學、英文、歷史等)

第二章:pandas介紹

  1. %matplotlib inline 是甚麼意思呢???沒想到還有魔術指令
  2. df.index 表格的最左邊,(哪個人,A、B、C人)
  3. df.values(欄位內容)、df.shape = 顯示維度、dtype = 資料型態
  4. DataFrame裡面是運用了numpy的array。df.values就可以看出
  5. s = pd.Series([1,2,3]),是三列的資料 ( 3 ,  ) 一維資料
    s = pd.array([1,2,3]),是一列的資料( 1 , 3 ) 一維資料
  6. d = s.to_frame(),轉成DataFrame
  7. t = d.T,要先轉成DataFrame,才能將其轉成一列 ( 1, 3 ) 二維資料
  8. s = pd.array([1,2,3]),是一列的資料( 1 , 3 ) 一維資料
    s.reshape(3,1),就可以轉成 ( 3, 1 ),要自己輸入 3, 1。二
    維資料
  9. s.reshape(-1, 1 )  二維資料,也有reshape( 1, -1) 一維資料
  10. 二維轉一維,有兩個方法
    s.reshape(-1)、 s.ravel()
  11. df.isnull() ,可以檢查是否有遺漏值(要使用 np.nan ,自己使用字串'NaN'無效,且待會計算平均的時候會出現錯誤)
  12. df.loc[ ['simon'] ] 是 location哪個人,
    df.iloc[ [ 0 ] ] 是 index location 哪一列,可以用在取某個區間的列
  13. df.loc [ ['第一個人' ,'第二個人] ]  [ [ '第一項目', '第二項目' ] ] 
    這裡是指定某個人,某個項目
  14. df.loc[ ['第一個人' ,'第二個人],   '第一項目'   '第N項目' ]
    這裡是指定某個人, 某個區間的項目
    所以要指定就用中括號刮起來,要區間的話,就用冒號處理
  15. 在處理df的時候,建議還是先複製,df2 = df.copy()
  16. df.drop(['個人平均'], axis=1) 可以刪除(所以建議copy原始資料)
  17. 篩選資料,先建立布林陣列,例如 bool_v = df['math'] > 60
    接著帶入DF,df [ bool_v ] 就可以顯示出來了
  18. apply(某個函數), s.apply( lambda x : ( x+1)  if (x%2)==1  else ( x-1 )   )
    s.apply(lambda (x是s裡面的值) : (若是真的執行這裡) if(判斷式) else (假的執行這裡))
  19. 習題:有字串( '90' )跑入資料中,DF看不出來,用mean()就會顯示錯誤,但要怎麼去找這字串呢???用下面的方法
    en.apply(lambda x :(print(x)) if(type(x) != int) else () )
  20. 找到以後用at來修改(感謝Mike分享很多的技巧),專門修改某一個欄位的值
  21. 取得欄位的名稱(感謝python攻略),有時候函數有括號,像columns就不用括號
  22. 要將NAN的值,用各科的平均填回去,吃盡了苦頭。
    1.將平均放入一個陣列 meanlist
    2.取出df2的shape大小,之後要跑for
    3.取出df2.columns ,欄位名稱(出來的就是陣列)
    4.再將每科是NAN的放入listna陣列
    5.最後比對 listna,TRUE就放入平均。df2.at[ '哪個人' , '哪個科目' ] = 多少
    6.很特別,用type會顯示兩種,一個是int,一個是float

第三章:資料預處理 (用sklearn預處理資料)

  1. 有兩類資料類型,數值型(num_pl)、類別型(cat_pl),最後整合起來資料型(data_pl)
    sklearn的SimpleImpute會轉成numpy。
  2. ddof=0,回傳母體標準差;ddof=1,回傳樣本標準差。感謝ShengYu分享(裡面還有很多python教學)。


第四章:


用colab試試看~~

沒有留言:

張貼留言

注意:只有此網誌的成員可以留言。