乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      (附代碼)Pandas必會的方法匯總,用Python做數據分析更加如魚得水!

       西北望msm66g9f 2021-09-10

      Image


      編者薦語
      用Python做數據分析光是掌握numpy和matplotlib可不夠,Pandas是必須要掌握的一個重點,numpy雖然能夠幫我們處理處理數值型數據,但是這還不夠,很多時候,我們的數據除了數值之外,還有字符串,還有時間序列等。
      轉載自 | AI算法與圖像處理

      今天來分享一些Pandas必會的用法,讓你的數據分析水平更上一層樓。Image

      一、Pandas兩大數據結構的創(chuàng)建

      序號方法說明
      1pd.Series(對象,index=[ ])創(chuàng)建Series。對象可以是列表\ndarray、字典以及DataFrame中的某一行或某一列
      2pd.DataFrame(data,columns = [ ],index = [ ])創(chuàng)建DataFrame。columns和index為指定的列、行索引,并按照順序排列

      舉例:用pandas創(chuàng)建數據表:

      df = pd.DataFrame({'id':[1001,1002,1003,1004,1005,1006], 
       'date':pd.date_range('20130102', periods=6),
        'city':['Beijing ', 'SH', ' guangzhou ', 'Shenzhen', 'shanghai', 'BEIJING '],
       'age':[23,44,54,32,34,32],
       'category':['100-A','100-B','110-A','110-C','210-A','130-F'],
        'price':[1200,np.nan,2133,5433,np.nan,4432]},
        columns =['id','date','city','category','age','price'])

      二、DataFrame常見方法

      序號方法說明
      1df.head()查詢數據的前五行
      2df.tail()查詢數據的末尾5行
      3pandas.qcut()基于秩或基于樣本分位數將變量離散化為等大小桶
      4pandas.cut()基于分位數的離散化函數
      5pandas.date_range()返回一個時間索引
      6df.apply()沿相應軸應用函數
      7Series.value_counts()返回不同數據的計數值
      8df.reset_index()重新設置index,參數drop = True時會丟棄原來的索引,設置新的從0開始的索引,常與groupby()一起用

      舉例:重新索引

      df_inner.reset_index()

      三、數據索引

      序號方法說明
      1.values將DataFrame轉換為ndarray二維數組
      2.append(idx)連接另一個Index對象,產生新的Index對象
      3.insert(loc,e)在loc位置增加一個元素
      4.delete(loc)刪除loc位置處的元素
      5.union(idx)計算并集
      6.intersection(idx)計算交集
      7.diff(idx)計算差集,產生新的Index對象
      8.reindex(index, columns ,fill_value, method, limit, copy )改變、重排Series和DataFrame索引,會創(chuàng)建一個新對象,如果某個索引值當前不存在,就引入缺失值。
      9.drop()刪除Series和DataFrame指定行或列索引。
      10.loc[行標簽,列標簽]通過標簽查詢指定的數據,第一個值為行標簽,第二值為列標簽。
      11df.iloc[行位置,列位置]通過默認生成的數字索引查詢指定的數據。

      舉例:按索引提取單行的數值

      df_inner.loc[3]

      四、DataFrame選取和重新組合數據的方法

      序號方法說明
      1df[val]從DataFrame選取單列或一組列;在特殊情況下比較便利:布爾型數組(過濾行)、切片(行切片)、或布爾型DataFrame(根據條件設置值)
      2df.loc[val]通過標簽,選取DataFrame的單個行或一組行
      3df.loc[:,val]通過標簽,選取單列或列子集
      4df.1oc[val1,val2]通過標簽,同時選取行和列
      5df.iloc[where]通過整數位置,從DataFrame選取單個行或行子集
      6df.iloc[where_i,where_j]通過整數位置,同時選取行和列
      7df.at[1abel_i,1abel_j]通過行和列標簽,選取單一的標量
      8df.iat[i,j]通過行和列的位置(整數),選取單一的標量
      9reindex通過標簽選取行或列
      10get_value通過行和列標簽選取單一值
      11set_value通過行和列標簽選取單一值

      舉例:使用iloc按位置區(qū)域提取數據

      df_inner.iloc[:3,:2] #冒號前后的數字不再是索引的標簽名稱,而是數據所在的位置,從0開始,前三行,前兩列。

      五、排序

      序號函數說明
      1.sort_index(axis=0, ascending=True)根據指定軸索引的值進行排序
      2Series.sort_values(axis=0, ascending=True)只能根據0軸的值排序。
      3DataFrame.sort_values(by, axis=0, ascending=True)參數by為axis軸上的某個索引或索引列表。

      舉例:按照索引列排序

      df_inner.sort_index()

      六、相關分析和統(tǒng)計分析

      序號方法說明
      1.idxmin()計算數據最小值所在位置的索引(自定義索引)
      2.idxmax()計算數據最大值所在位置的索引(自定義索引)
      3.argmin()計算數據最小值所在位置的索引位置(自動索引)
      4.argmax()計算數據最大值所在位置的索引位置(自動索引)
      5.describe()針對各列的多個統(tǒng)計匯總,用統(tǒng)計學指標快速描述數據的概要
      6.sum()計算各列數據的和
      7.count()非NaN值的數量
      8.mean( )計算數據的算術平均值
      9.median()計算算術中位數
      10.var()計算數據的方差
      11.std()計算數據的標準差
      12.corr()計算相關系數矩陣
      13.cov()計算協(xié)方差矩陣
      14.corrwith()利用DataFrame的corrwith方法,可以計算其列或行跟另一個Series或DataFrame之間的相關系數。
      15.min()計算數據的最小值
      16.max()計算數據的最大值
      17.diff()計算一階差分,對時間序列很有效
      18.mode()計算眾數,返回頻數最高的那(幾)個
      19.mean()計算均值
      20.quantile()計算分位數(0到1)
      21.isin()用于判斷矢量化集合的成員資格,可用于過濾Series中或DataFrame列中數據的子集
      22.unique()返回一個Series中的唯一值組成的數組。
      23.value_counts()計算一個Series中各值出現的頻率。

      舉例:判斷city列的值是否為北京

      df_inner['city'].isin(['beijing'])

      七、分組的方法

      序號方法說明
      1DataFrame.groupby()分組函數
      2pandas.cut()根據數據分析對象的特征,按照一定的數值指標,把數據分析對象劃分為不同的區(qū)間部分來進行研究,以揭示其內在的聯系和規(guī)律性。

      舉例:.groupby用法

      group_by_name=salaries.groupby('name') 
      print(type(group_by_name))

      輸出結果為:

      <class 'pandas.core.groupby.DataFrameGroupBy'>

      八、讀寫文本格式數據的方法

      序號方法說明
      1read_csv從文件、URL、文件型對象中加載帶分隔符的數據。默認分隔符為逗號
      2read_table從文件、URL、文件型對象中加載帶分隔符的數據。默認分隔符為制表符(t)
      3read_ fwf讀取定寬列格式數據(也就是說,沒有分隔符)
      4read_clipboard讀取剪貼板中的數據,可以看做read_table的剪貼板版。再將網頁轉換為表格時很有用
      5read_excel從ExcelXLS或XLSXfile 讀取表格數據
      6read_hdf讀取pandas寫的HDF5文件
      7read_html讀取HTML文檔中的所有表格
      8read_json讀取JSON字符串中的數據
      9read_msgpack二進制格式編碼的pandas數據
      10read_pickle讀取Python pickle格式中存儲的任意對象
      11read_sas讀取存儲于SAS系統(tǒng)自定義存儲格式的SAS數據集
      12read_sql讀取SQL 查詢結果為pandas的DataFrame
      13read_stata讀取Stata文件格式的數據集
      14read_feather讀取 Feather二進制文件格式

      舉例:導入CSV或者xlsx文件

      df = pd.DataFrame(pd.read_csv('name.csv',header=1))
      df = pd.DataFrame(pd.read_excel('name.xlsx'))

      九、處理缺失數據

      序號方法說明
      1.fillna(value,method,limit,inplace)填充缺失值
      2.dropna()刪除缺失數據
      3.info()查看數據的信息,包括每個字段的名稱、非空數量、字段的數據類型
      4.isnull()返回一個同樣長度的值為布爾型的對象(Series或DataFrame),表示哪些值是缺失的

      舉例:查看數據表基本信息(維度、列名稱、數據格式等等)

      df.info()

      十、數據轉換

      序號方法說明
      1.replace(old, new)用新的數據替換老的數據,如果希望一次性替換多個值,old和new可以是列表。默認會返回一個新的對象,傳入inplace=True可以對現有對象進行就地修改。
      2.duplicated()判斷各行是否是重復行,返回一個布爾型Series。
      3.drop_duplicates()刪除重復行,返回刪除后的DataFrame對象。

      舉例:刪除后出現的重復值:

      df['city'].drop_duplicates()

      結語

      文章中總結的是都是一些Pandas常用的方法,至于一些基礎的概念還需要你學到Pandas的時候去理解,例如Series是什么?DataFrame是什么?如果你已經清楚了Pandas的這些基礎東西之后,搭配上文章中的這些方法,那你用Pandas去做數據處理和分析必然會游刃有余。

      END

        本站是提供個人知識管理的網絡存儲空間,所有內容均由用戶發(fā)布,不代表本站觀點。請注意甄別內容中的聯系方式、誘導購買等信息,謹防詐騙。如發(fā)現有害或侵權內容,請點擊一鍵舉報。
        轉藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約