当前位置:   article > 正文

Pandas中loc和iloc函数用法_pandas中loc函数

pandas中loc函数

loc函数:通过行索引 "Index" 中的具体值来取行数据(如取"Index"为"A"的行

iloc函数:通过行号来取行数据(如取第二行的数据

1. 利用loc、iloc提取行数据

  1. import numpy as np
  2. import pandas as pd
  3. #创建一个Dataframe
  4. data=pd.DataFrame(np.arange(16).reshape(4,4),index=list('abcd'),columns=list('ABCD'))
  5. In[1]: data
  6. Out[1]:
  7. A B C D
  8. a 0 1 2 3
  9. b 4 5 6 7
  10. c 8 9 10 11
  11. d 12 13 14 15
  12. #取索引为'a'的行
  13. In[2]: data.loc['a']
  14. Out[2]:
  15. A 0
  16. B 1
  17. C 2
  18. D 3
  19. #取第一行数据,索引为'a'的行就是第一行,所以结果相同
  20. In[3]: data.iloc[0]
  21. Out[3]:
  22. A 0
  23. B 1
  24. C 2
  25. D 3

2. 利用loc、iloc提取列数据

  1. In[4]:data.loc[:,['A']] #取'A'列所有行,多取几列格式为 data.loc[:,['A','B']]
  2. Out[4]:
  3. A
  4. a 0
  5. b 4
  6. c 8
  7. d 12
  8. In[5]:data.iloc[:,[0]] #取第0列所有行,多取几列格式为 data.iloc[:,[0,1]]
  9. Out[5]:
  10. A
  11. a 0
  12. b 4
  13. c 8
  14. d 12

3.利用loc、iloc提取指定行、指定列数据

  1. In[6]:data.loc[['a','b'],['A','B']] #提取index为'a','b',列名为'A','B'中的数据
  2. Out[6]:
  3. A B
  4. a 0 1
  5. b 4 5
  6. In[7]:data.iloc[[0,1],[0,1]] #提取第0、1行,第0、1列中的数据
  7. Out[7]:
  8. A B
  9. a 0 1
  10. b 4 5

4.利用loc、iloc提取所有数据

  1. In[8]:data.loc[:,:] #取A,B,C,D列的所有行
  2. Out[8]:
  3. A B C D
  4. a 0 1 2 3
  5. b 4 5 6 7
  6. c 8 9 10 11
  7. d 12 13 14 15
  8. In[9]:data.iloc[:,:] #取第0,1,2,3列的所有行
  9. Out[9]:
  10. A B C D
  11. a 0 1 2 3
  12. b 4 5 6 7
  13. c 8 9 10 11
  14. d 12 13 14 15

5.利用loc函数,根据某个数据来提取数据所在的行

  1. In[10]: data.loc[data['A']==0] #提取data数据(筛选条件: A列中数字为0所在的行数据)
  2. Out[10]:
  3. A B C D
  4. a 0 1 2 3
  5. In[11]: data.loc[(data['A']==0)&(data['B']==2)] #提取data数据(多个筛选条件)
  6. Out[11]:
  7. A B C D
  8. a 0 1 2 3

同时,以下几种写法也可提取数据所在的行,与第五种用法类似,仅作补充。

  1. In[12]: data[data['A']==0] #dataframe用法
  2. In[13]: data[data['A'].isin([0])] #isin函数
  3. In[14]: data[(data['A']==0)&(data['B']==2)] #dataframe用法
  4. In[15]: data[(data['A'].isin([0]))&(data['B'].isin([2]))] #isin函数
  5. Out[15]:
  6. A B C D
  7. a 0 1 2 3

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家小花儿/article/detail/192444
推荐阅读
相关标签
  

闽ICP备14008679号