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

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

    • 分享

      【Python數(shù)據(jù)分析】第一篇

       highoo 2019-03-20

        IO:導(dǎo)入導(dǎo)出數(shù)據(jù)

      1
      2
      3
      4
      5
      6
      import pandas as pd
      df = pd.read_csv(filepath_or_buffer, sep=',', header='infer', index_col=None, names=None, na_values=None, error_bad_lines=True, parse_dates=False)
      sep 分隔符,csv文件,默認(rèn)是逗號(hào) ,
      header    是否導(dǎo)入第一行為列名  否則填None

        查看前5行數(shù)據(jù):

      1
      df.head()

        通過type(df) 查看df類型  => pandas.core.frame.DataFrame

        查看每一列數(shù)據(jù):

      1
      df['列名']

        通過 type(df['fips']) 得知 => pandas.core.series.Series

        Frame中每一列是個(gè)series

        查看某一行數(shù)據(jù):

      1
      2
      df.loc[索引]
      索引不僅可以是數(shù)字,還可以是字符串!

        I/O數(shù)據(jù)寫出:

      1
      DataFrame.to_csv(path_or_buf=None, sep=', ', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, mode='w', encoding=None, compression=None, quoting=None, quotechar='"', line_terminator='\n', chunksize=None, tupleize_cols=False, date_format=None, doublequote=True, escapechar=None, decimal='.', **kwds)

        讀取報(bào)錯(cuò)處理:

        1.先把數(shù)據(jù)文本轉(zhuǎn)換成utf-8 文本

        2.error_bad_lines = False 默認(rèn)True 出現(xiàn)錯(cuò)誤,報(bào)錯(cuò)

        3.encoding = 'gbk' 

        Missing Value (NaN) 需要優(yōu)先處理

      1.針對(duì)數(shù)值型!

      2.查看Missing Value的行

      1
      2
      3
      df.isnull()
      df.notnull()

      3.替換

      1
      df.fillna(0)        #統(tǒng)一換成0   數(shù)值型,字符型也會(huì)替換成0

      4.刪除

      1
      df.dropna(0)    # 將含有 NaN 的行刪除! (不推薦)

        dataframe與series的屬性

      1.字典 => series  (key => 索引)

      2.字典 => dataframe   需要指定索引!

      1
      2
      3
      pd.DataFrame(dict,index=[0])   
      pd.DataFrame.from_dict(dict,orient = 'index' )   # 字典中的key 變成索引  , orient:方向

            

         獲取行列總數(shù)

      1
      df.shape    # 不包含索引 !

        獲取索引

      1
      df.index    # 返回一個(gè)迭代器

        獲取列名

      1
      df.columns

        行列顛倒

      1
      df.T  # 轉(zhuǎn)制

        切片( 前閉后開 )

      1
      df[1:5]  # 索引

        選取某列或多列

      1
      2
      3
      4
      5
      6
      # 某一列 (填入列名)
      df.fips   
      df['fips']  (推薦)
      # 多列  最外層用[ ] 包含
      df[['fips','area_name']]

        增加一列

      1
      df['xxx'] = None

        重命名某列  返回新數(shù)據(jù)集! 原始不變

      1
      2
      3
      df.rename(columns={"old_lab"="new_lab"})
      df.rename(columns={"old_lab"="new_lab"},inplace=True)    # 替換原來數(shù)據(jù)集

        刪除  返回新數(shù)據(jù)集! 原始不變

      1
      df.drop('label', axis = 1# axis 軸  0 代表行, 1 列    inplace=True

        計(jì)算頻次

      1
      df['arer_name'].value_counts()

        設(shè)置索引位

      1
      dfnew =  df.set_index("area_name")    # 索引位:可以重復(fù),可以為字符串類型

        需要注意這3者區(qū)別

      1
      2
      3
      4
      5
      6
      7
      8
      df.loc[1:4]    # 針對(duì)索引名稱進(jìn)行操作!
      df[1:4]    # 針對(duì)索引進(jìn)行操作!
      df.iloc[1:4]    # 針對(duì)索引進(jìn)行操作!
      # 切片針對(duì)索引進(jìn)行操作! 具有 前閉后開 屬性
      # loc 輸入的值必須是索引的名稱,iloc 輸入的是索引的位置

        選取多列

      1
      2
      3
      dfnew.loc['Barbour County',['fips','state_abbreviation']]
      dfnew.iloc[1:5,:2]

        

        定位

      1
      2
      3
      df.loc[ df['area_name'] == 'United States']
      df.loc[ df['PST045214'] > 1000000 ]

        賦值

      1
      df.loc[ df.['area_name'] == 'United States' , 'new_lab'] =0

        加條件判斷的賦值

      1
      2
      # 注意括號(hào)位置 制定運(yùn)行順序!
      df.loc[ (df.['PST045214'] >= 100000) & (df.['PST040210'] >= 100000)  , 'labelP' ] =1     

        條件取反賦值

      1
      df.loc[ ~((df.['PST045214'] >= 100000) & (df.['PST040210'] >= 100000))  , 'labelP' ] =0

        loc 與 iloc 的綜合

      1
      2
      3
      4
      df.ix[ 1:4 ]       
      df.ix[ 1:4 , ['fips','area_name'] ]    
      # ix是loc與iloc的結(jié)合,輸入的既可以是名稱也可以是位置  (不推薦)

        查詢

      1
      2
      3
      4
      5
      6
      7
      8
      9
      10
      11
      12
      13
      df.query("PST045214 > 100000 & PST040210 > 100000 ")
      df.query("state_abbreviation == 'AL' ")    # 注意 如果使用字符串進(jìn)行比較 ,,要用單引號(hào)!
      *****************
      num = 100000
      df.query("PST045214 > num & PST040210 > num ")
      # 報(bào)錯(cuò)!, query 不支持變量!!
      *****************
      num = 1000000
      df.loc[ df['PST045214'] > num ]
      # loc 支持變量!!

        多重索引

      1
      movie.set_index(['director_name','movie_title'])

      1
      movie.set_index(['director_name','movie_title'] , drop= False , append = True) # False 保留作為索引兩列  append 添加索引

      1
      2
      3
      index.get_level_values(0)    # 獲得0層索引
      index.get_level_values(1)    # 獲得1層索引

        對(duì)0層索引操作

      1
      movie.loc['James Cameron']

        處理多重索引時(shí),先對(duì)其進(jìn)行排序

      1
      movie.sort_index(inplace= True)

        對(duì)多層索引操作

      1
      2
      3
      4
      5
      6
      7
      movie.loc[(slice(None) , 178.0) ,:]        # 逗號(hào)不可去掉,
      movie.loc[(slice(None) , slice(178.0 , 200.0 )) ,:]
      movie.loc[(slice(None) , slice(178.0 , 200.0 )) , ['color','genres']] 
      movie.loc[ (['James Cameron','Gore Verbinski'] , slice(178.0 , 200.0 )),['color','genres']]

        處理空格

      1
      movie["movie_title"] = movie["movie_title"].map(lambda s : s.strip(" "))

        查看類型

      1
      movie.dtypes

        交換索引

      1
      movie.swaplevel(0,1)

        idx

      1
      2
      3
      4
      idx = pd.IndexSlice
      movie.loc[ idx[ : , 100.0:200.0] ,:]
      movie.loc[(slice(None) , slice(100.0 , 200.0 )),:]

        xs()

      1
      2
      3
      4
      5
      movie.xs('James Cameron',level = 0)    # 第0層索引選取
      movie.xs('James Cameron',level = 'director_name')
      movie.xs((178,'James Cameron'),level = (1,0))

        取反場(chǎng)合

      1
      2
      3
      movie.loc[ (['James Cameron','Jon Gunn'] , slice(100.0 , 200.0 )),"new_lab"] =  1
      movie.loc[~( (['James Cameron','Jon Gunn'] , slice(100.0 , 200.0 ))),"new_lab"] =  1    # 報(bào)錯(cuò) !

        

       

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多