<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      pandas之DataFrame數據分析

      2.DATAFRAME

      dataframe是我們最常使用的數據結構,它含有一組有序的列,每一列可以是不同的類型

      import numpy as np
      import pandas as pd
      pandas.DataFrame(data=None, index=None, columns=None, dtype=None, copy=False)
      """
      data: numpy ndarray(結構化或同類),dict或DataFrame,Dict可以包含Series,數組,常量或類似列表的對象
      index: dataframe的索引,如果沒有自定義,則默認為RangeIndex(0,1,2,...,n)
      columns:dataframe的列標簽,如果沒有自定義,則默認為RangeIndex(0,1,2,...,n)
      dtype:默認None,要強制的數據類型。 只允許一個dtype
      copy:boolean,默認為False
      """
      

      創建DataFrame

      df1 = pd.DataFrame(np.array([[10,20,25],[30,40,45]]))
      print(df1)
      """
          0   1   2
      0  10  20  25
      1  30  40  45
      """
      df2 = pd.DataFrame([np.arange(1,8),np.arange(11,18)])
      print(df2)
      """
          0   1   2   3   4   5   6
      0   1   2   3   4   5   6   7
      1  11  12  13  14  15  16  17
      """
      df1.df1.shape
      """
      兩行三列
      (2, 3)
      """
      df3 = pd.DataFrame(np.array([[10,20,25],[30,40,45]]),index=("a","b"),columns=("c1","c2","c3"))
      df3
      """
      index: 行索引
      columns:列標簽
      	c1	c2	c3
      a	10	20	25
      b	30	40	45
      """
      df3.index
      """
      取行索引
      Index(['a', 'b'], dtype='object')
      """
      df3.columns[0]
      """
      取列標簽第一個
      'c1'
      """
      df3.columns = ["h1","h2","h3"]
      df3
      """
      修改列標簽
      	h1	h2	h3
      a	10	20	25
      b	30	40	45
      """
      df4 = pd.DataFrame({'a':[1,2,3],'b':5})
      df4
      """
      	a	b
      0	1	5
      1	2	5
      2	3	5
      """
      l1 = pd.Series(np.arange(1,9,2))
      l2 = pd.Series(np.arange(2,10,2))
      l1
      """
      1-9以2為間隔的Series數據
      0    1
      1    3
      2    5
      3    7
      """
      df5 = pd.DataFrame({"a1":l1,"a2":l2})
      df5
      """
      	a1	a2
      0	1	2
      1	3	4
      2	5	6
      3	7	8
      """
      

      CSV中讀取數據

      eu1 = pd.read_csv(r"C:\Users\Administrator\Desktop\csv_file.csv")
      eu1
      """
      文件數據
      	a	b	c	d	e	f	g	h
      0	1	11	112	1123	11234	112345	1123456	11234567
      1	2	20	200	242	4453	5434	7867	3768324
      2	2	30	300	8348	36738	786	45723	678
      3	4	40	400	76867	76786	78678	3683	78
      4	5	50	500	5543	42345	368736	38533	38763
      5	6	60	600	6786	5675	767	464565	457
      6	7	70	700	37417	3	38737	543737	37632
      7	8	80	800	678	3453	7867	34537	38763
      8	9	90	900	434537	7378	8	2137	378
      9	10	100	1000	7378	7843	7678	78	3534
      """
      eu1.head(3)
      """
      head(3)顯示前3行數據,默認前5行
      	a	b	c	d	e	f	g	h
      0	1	11	112	1123	11234	112345	1123456	11234567
      1	2	20	200	242	4453	5434	7867	3768324
      2	2	30	300	8348	36738	786	45723	678
      """
      eu12.tail(2)
      """
      tail(2)顯示后兩行數據,默認后5行
      	a	b	c	d	e      f     g	    h
      8	9	90	900     434537	7378  8	     2137   378
      9	10	100	1000    7378	7843  7678   78     3534
      """
      len(eu1)
      """
      eu1的數據條數(行)
      10
      """
      eu1.shape
      """
      10行8列
      (10,8)
      """
      eu1.shape[0]
      """
      10行
      10
      """
      eu1.shape[1]
      """
      8列
      8
      """
      eu1.index
      """
      起始:0, 結束:10,步長:1
      RangeIndex(start=0, stop=10, step=1)
      """
      

      DataFrame操作數據的行/列

      1.使用 [ ] 運算符進行切片,按照索引能夠實現行選擇或列選擇或區塊選擇
      # 行選擇
      eu1[1:4]
      """
      1-3行的數據
      	a	b	c	d	e	f	g	h
      1	2	20	200	242	4453	5434	7867	3768324
      2	2	30	300	8348	36738	786	45723	678
      3	4	40	400	76867	76786	78678	3683	78
      """
      eu1.index.get_loc(0)
      """
      eu1.index.get_loc('行標簽') 0標簽的索引
      0
      """
      

      列選擇
      多列選擇,不能像行選擇時一樣使用num1:num2這樣的方法來選擇
      eu1['b']
      type(eu1['b'])
      """
      標簽為bt的一列數據,Series類型
      0 11
      1 20
      2 30
      3 40
      4 50
      5 60
      6 70
      7 80
      8 90
      9 100
      Name: b, dtype: int64

      pandas.core.series.Series
      """
      eu1[['b']]
      """
      標簽為b的一列數據,DataFrame類型
      b
      0 11
      1 20
      2 30
      3 40
      4 50
      5 60
      6 70
      7 80
      8 90
      9 100

      pandas.core.frame.DataFrame
      """
      eu1[['a','b']]
      """
      eu12[['開始列','結束列']]
      a b
      0 1 11
      1 2 20
      2 2 30
      3 4 40
      4 5 50
      5 6 60
      6 7 70
      7 8 80
      8 9 90
      9 10 100
      """
      eu1.columns.get_loc('a')
      """
      eu1.columns.get_loc('a') a列的索引
      0
      """
      區塊選擇
      eu1[2:4][['a','b']]
      """
      獲取第2行第4行中,'a'和'b'列的值
      a b
      2 2 30
      3 4 40
      """

      2.使用 loc 按照索引(index)的值來進行行列選擇
      # 行選擇
      eu1.loc[2]
      type(eu1.loc[2])
      """
      第2行的數據
      a        2
      b       30
      c      300
      d     8348
      e    36738
      f      786
      g    45723
      h      678
      Name: 2, dtype: int64
      

      pandas.core.series.Series
      """
      eu1.loc[[2]]
      type(eu1.loc[[2]])
      """
      第2行的數據
      a b c d e f g h
      2 2 30 300 8348 36738 786 45723 678

      pandas.core.frame.DataFrame
      """
      eu1.loc[1:2]
      """
      1-2行的數據
      a b c d e f g h
      1 2 20 200 242 4453 5434 7867 3768324
      2 2 30 300 8348 36738 786 45723 678
      """
      列選擇
      eu1.loc[1:2,['a','b']]
      """
      數據基礎上去a,b列
      a b
      1 2 20
      2 2 30
      """
      只能去連續的塊選
      eu1.loc[1:4,['a','b','c']]
      """
      1-4行,'a','b','c'列
      """

      3.使用 iloc 按照索引 (index) 的位置來進行選取

      iloc全是以0開頭的行號和列號

      # 行選擇
      eu1.iloc[[2]]
      """
      2行數據
      	a	b	c	d	 e	f	g	h
      2	2	30	300	8348 	36738	786	45723 	678
      """
      eu1.iloc[0:2]
      """
      0-1行的數據
      	a	b	c	d	e	f	g	h
      0	1	11	112	1123	11234	112345	1123456	11234567
      1	2	20	200	242	4453	5434	7867	3768324	
      """
      列選擇
      eu1.iloc[0:2,[1,2]]
      """
      0-1行中,列索引為1,2的數據
      	b	c
      0	11	112
      1	20	200
      """
      塊選擇
      eu1.iloc[[1,2,4],[1,3]]
      """
      1,2,4行; 1,3列
      	b	d
      1	20	242
      2	30	8348
      4	50	5543
      """
      
      4.使用 .at[ ] 和 .iat[ ] 按標簽或位置進行標量查找(獲取某一行列的值)

      at的使用方法與loc類似,但是比loc有更快的訪問數據的速度,但只能訪問單個元素,不能訪問多個元素

      iat對于iloc的關系就像at對于loc的關系,是一種更快的基于索引位置的選擇方法,同at一樣只能訪問單個元素

      eu1.at[2,'b']
      """
      獲取第2行b列的元素
      20
      """
      eu1.iat[2,1]
      """
      獲取第2行1列的元素
      30
      """
      
      5.使用 .ix[]

      以上說過的幾種方法都要求查詢的秩在索引中,或者位置不超過長度范圍,而ix允許你得到不在DataFrame索引中的數據。

      eu1.ix[1:12]
      """
      數據只到9行
      	a	b	c	d	e	f	g	h
      1	2	20	200	242	4453	5434	7867	3768324
      2	2	30	300	8348	36738	786	45723	678
      3	4	40	400	76867	76786	78678	3683	78
      4	5	50	500	5543	42345	368736	38533	38763
      5	6	60	600	6786	5675	767	464565	457
      6	7	70	700	37417	3	38737	543737	37632
      7	8	80	800	678	3453	7867	34537	38763
      8	9	90	900	434537	7378	8	2137	378
      9	10	100	1000	7378	7843	7678	78	3534
      """
      eu1.ix[[9,11]]
      """
      	a	b	c	d	e	f	g	h
      9	10.0	100.0	1000.0	7378.0	7843.0	7678.0	78.0	3534.0
      11	NaN		NaN		NaN		NaN		NaN		NaN		NaN		NaN	
      """
      

      a

       

      參考連接--https://lupython.gitee.io/2017/04/07/pandas的介紹/

      posted @ 2019-09-19 16:48  丶小白吖  閱讀(691)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 国产精品福利在线观看无码卡一| 综合激情网一区二区三区| 日韩成人高精品一区二区| 国产在线啪| 少妇人妻偷人偷人精品| 日本精品不卡一二三区| 一区二区三区四区国产综合| 中文字幕久久国产精品| 好紧好湿太硬了我太爽了视频 | 精品人妻av中文字幕乱| 2019亚洲午夜无码天堂| 安岳县| 国产精品亚洲二区亚瑟| 91老肥熟女九色老女人| 国产a在视频线精品视频下载| 亚洲成人av免费一区| 人妻少妇精品视频无码综合| av天堂亚洲天堂亚洲天堂| www国产精品内射熟女| 亚洲日韩VA无码中文字幕| 少妇人妻偷人精品免费| 韩国美女福利视频一区二区| 国内精品自国内精品自久久| 老司机aⅴ在线精品导航| yw尤物av无码国产在线观看| 日韩精品不卡一区二区三区| 插入中文字幕在线一区二区三区| 精品国产一区二区三区av性色 | 被黑人巨大一区二区三区| 九九久久精品国产免费看小说| 久久国产免费观看精品3| 亚洲AV成人无码久久精品四虎| 中文字幕人妻精品在线| 亚洲国产精品特色大片观看完整版| 久久欧洲精品成av人片| 国产成人无码免费视频在线| 无码人妻熟妇av又粗又大| 麻豆亚州无矿码专区视频| 精品国产品香蕉在线| 性色av 一区二区三区| 男女激情一区二区三区|