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

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

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

      pandas的DataFrame的行列選擇

      Pandas可根據列名稱選取,還可以根據列所在的position(數字,在第幾行第幾列,注意pandas行列的position是從0開始)選取。相關函數如下:

      1)loc,基于列label,可選取特定行(根據行index);

      2)iloc,基于行/列的position;

      3)at,根據指定行index及列label,快速定位DataFrame的元素;

      4)iat,與at類似,不同的是根據position來定位的;

      5)ix,為loc與iloc的混合體,既支持label也支持position;

      The simplified rules of indexing are

      • Use loc for label-based indexing
      • Use iloc for positional indexing
      1. # -*- coding:utf-8 -*-
      2. import pandas as pd
      3.  
      4. df = pd.read_csv('./iris_training.csv', low_memory=False)
      5. print(df.head(10))
      6. """
      7. 120 4 setosa versicolor virginica
      8. 0 6.4 2.8 5.6 2.2 2
      9. 1 5.0 2.3 3.3 1.0 1
      10. 2 4.9 2.5 4.5 1.7 2
      11. 3 4.9 3.1 1.5 0.1 0
      12. 4 5.7 3.8 1.7 0.3 0
      13. 5 4.4 3.2 1.3 0.2 0
      14. 6 5.4 3.4 1.5 0.4 0
      15. 7 6.9 3.1 5.1 2.3 2
      16. 8 6.7 3.1 4.4 1.4 1
      17. 9 5.1 3.7 1.5 0.4 0"""

      行選擇

      Pandas進行行選擇一般有三種方法:

      • 連續多行的選擇用類似于python的列表切片
      • loc通過行標簽索引來確定行的
      • iloc通過行號索引來確定行
      1. # 第一種,使用類似于python的列表切片
      2. print(df[0:5])
      3. """
      4. 120 4 setosa versicolor virginica
      5. 0 6.4 2.8 5.6 2.2 2
      6. 1 5.0 2.3 3.3 1.0 1
      7. 2 4.9 2.5 4.5 1.7 2
      8. 3 4.9 3.1 1.5 0.1 0
      9. 4 5.7 3.8 1.7 0.3 0 """
      10.  
      11.  
      12. print(df[0:5:2])
      13. """
      14. 120 4 setosa versicolor virginica
      15. 0 6.4 2.8 5.6 2.2 2
      16. 2 4.9 2.5 4.5 1.7 2
      17. 4 5.7 3.8 1.7 0.3 0 """
      1. # 第二種,按照指定的索引選擇一行或多行,使用loc[]方法
      2. # .loc可以不加列名,則是行選擇
      3.  
      4. ser = df.loc[0]
      5. print(ser)
      6. """
      7. 120 6.4
      8. 4 2.8
      9. setosa 5.6
      10. versicolor 2.2
      11. virginica 2.0
      12. Name: 0, dtype: float64 """
      13.  
      14.  
      15. maser = df.loc[0:5] # 包括了5,它與第一種的列表索引最大的不同是包含了索引號為5的那一行數據
      16. print(maser)
      17. """
      18. 120 4 setosa versicolor virginica
      19. 0 6.4 2.8 5.6 2.2 2
      20. 1 5.0 2.3 3.3 1.0 1
      21. 2 4.9 2.5 4.5 1.7 2
      22. 3 4.9 3.1 1.5 0.1 0
      23. 4 5.7 3.8 1.7 0.3 0
      24. 5 4.4 3.2 1.3 0.2 0 """
      25.  
      26. print(df.loc[0:5:2])
      27. """
      28. 120 4 setosa versicolor virginica
      29. 0 6.4 2.8 5.6 2.2 2
      30. 2 4.9 2.5 4.5 1.7 2
      31. 4 5.7 3.8 1.7 0.3 0 """
      32.  
      33.  
      34. print(df.loc[[0, 5]])
      35. """ 選擇特定的行
      36. 120 4 setosa versicolor virginica
      37. 0 6.4 2.8 5.6 2.2 2
      38. 5 4.4 3.2 1.3 0.2 0 """
      1. # 第三種,按照指定的位置選擇一行多多行,使用iloc[]方法
      2. # .iloc可以不加第幾列,則是行選擇
      3.  
      4. # 在上面的數據中,使用iloc[]和loc[]的效果是一樣的,因為索引號都是從0開始并且連續不斷
      5. df2 = df.drop([1,2], axis=0)
      6. print(df2.head(10))
      7. """
      8. 120 4 setosa versicolor virginica
      9. 0 6.4 2.8 5.6 2.2 2
      10. 3 4.9 3.1 1.5 0.1 0
      11. 4 5.7 3.8 1.7 0.3 0
      12. 5 4.4 3.2 1.3 0.2 0
      13. 6 5.4 3.4 1.5 0.4 0
      14. 7 6.9 3.1 5.1 2.3 2
      15. 8 6.7 3.1 4.4 1.4 1
      16. 9 5.1 3.7 1.5 0.4 0
      17. 10 5.2 2.7 3.9 1.4 1
      18. 11 6.9 3.1 4.9 1.5 1 """
      19.  
      20. print(df2.loc[[0, 1]])
      21. """
      22. Passing list-likes to .loc or [] with any missing label will raise
      23. KeyError in the future, you can use .reindex() as an alternative.
      24.  
      25. 120 4 setosa versicolor virginica
      26. 0 6.4 2.8 5.6 2.2 2.0
      27. 1 NaN NaN NaN NaN NaN"""
      28.  
      29. print(df2.loc[0:5])
      30. """
      31. 120 4 setosa versicolor virginica
      32. 0 6.4 2.8 5.6 2.2 2
      33. 3 4.9 3.1 1.5 0.1 0
      34. 4 5.7 3.8 1.7 0.3 0
      35. 5 4.4 3.2 1.3 0.2 0 """
      36.  
      37. print(df2.iloc[[0, 1]])
      38. """
      39. 120 4 setosa versicolor virginica
      40. 0 6.4 2.8 5.6 2.2 2
      41. 3 4.9 3.1 1.5 0.1 0 """

      列選擇

      1. # 通過列名選擇單列
      2. print(df['120'])
      3. """
      4. 0 6.4
      5. 1 5.0
      6. 2 4.9
      7. 3 4.9
      8. 4 5.7
      9. 5 4.4
      10. ...
      11. 115 5.5
      12. 116 5.7
      13. 117 4.4
      14. 118 4.8
      15. 119 5.5
      16. Name: 120, Length: 120, dtype: float64"""
      17.  
      18. # 通過列名選擇多列
      19. print(df[['120', 'setosa']])
      20. """
      21. 120 setosa
      22. 0 6.4 5.6
      23. 1 5.0 3.3
      24. 2 4.9 4.5
      25. 3 4.9 1.5
      26. 4 5.7 1.7
      27. 5 4.4 1.3
      28. .. ... ...
      29. 115 5.5 4.4
      30. 116 5.7 4.2
      31. 117 4.4 1.4
      32. 118 4.8 1.4
      33. 119 5.5 3.7
      34.  
      35. [120 rows x 2 columns] """
      36.  
      37. # 如果沒有列名
      38. # df[df.columns[0]]

      行列選擇

      1. # print(df.loc[1:3, [2, 3]]) #.loc僅支持列名操作
      2. # KeyError: 'None of [[2, 3]] are in the [columns]'
      3.  
      4.  
      5. print(df.loc[1:3, ['120', 'setosa']])
      6. """
      7. 120 setosa
      8. 1 5.0 3.3
      9. 2 4.9 4.5
      10. 3 4.9 1.5 """
      11.  
      12. print(df.loc[1:3, '120': 'setosa'])
      13. """
      14. 120 4 setosa
      15. 1 5.0 2.3 3.3
      16. 2 4.9 2.5 4.5
      17. 3 4.9 3.1 1.5 """
      18.  
      19. print(df.iloc[1:3, [1, 2]])
      20. """
      21. 4 setosa
      22. 1 2.3 3.3
      23. 2 2.5 4.5 """
      24.  
      25. print(df.iloc[1:3, 1:3])
      26. """
      27. 4 setosa
      28. 1 2.3 3.3
      29. 2 2.5 4.5 """

      總結

      1).loc,.iloc,.ix,只加第一個參數如.loc([1,2]),.iloc([2:3]),.ix[2]…則進行的是行選擇

      2).loc,.at,選列是只能是列名,不能是position

      3).iloc,.iat,選列是只能是position,不能是列名

      4)df[]只能進行行選擇,或列選擇,不能同時進行列選擇,列選擇只能是列名。

      posted @ 2019-01-30 11:16  開拓者亮仔  閱讀(8339)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 婷婷久久香蕉五月综合加勒比| 国产日韩精品视频无码| 国产亚洲精品成人av一区| 精品黄色av一区二区三区| 日韩有码中文在线观看| 欧美牲交a欧美牲交aⅴ一| 最近中文字幕国产精选| 国产漂亮白嫩美女在线观看| 久久午夜私人影院| 少妇被日自拍黄色三级网络| 亚洲熟妇自偷自拍另欧美| 国产精品午夜福利在线观看| 国产熟女一区二区五月婷| 久久AV中文综合一区二区| 无码日韩做暖暖大全免费不卡| 国产91小视频在线观看| 国产在线乱子伦一区二区| 国产精品老熟女免费视频| 久久国产免费观看精品| 国产精品国三级国产av| 久久精品一偷一偷国产| 无码国产欧美一区二区三区不卡| 久久综合亚洲色一区二区三区| 欧美人与zoxxxx另类| 国产成人免费高清激情视频| 二连浩特市| 久久天天躁狠狠躁夜夜躁2012 | 欧美情侣性视频| 中文字幕精品亚洲二区| 日本高清日本在线免费| 玩弄放荡人妻少妇系列| 国产精品久久无中文字幕| 华人在线亚洲欧美精品| 通化市| 丰满高跟丝袜老熟女久久| 菠萝菠萝蜜午夜视频在线播放观看 | 欧洲国产成人久久精品综合| 成人午夜激情在线观看| 少妇人妻互换不带套| 午夜福利影院不卡影院| 欧美黑人性暴力猛交在线视频 |