Pandas之sort_values isin使用技巧

转自:https://blog.csdn.net/ialexanderi/article/details/78941694

1.在pandas的DataFrame中,我们经常需要根据某属性来选取指定条件的行,这时isin方法就特别有效。

[python] view plain copy

  1. import pandas as pd  
  2. df = pd.DataFrame([[1,2,3],[1,3,4],[2,4,3]],index = ['one','two','three'],columns = ['A','B','C'])  
  3. print df  
  4. #        A  B  C  
  5. # one    1  2  3  
  6. # two    1  3  4  
  7. # three  2  4  3  


这时假设我们选取A列中值为1的行,

[python] view plain copy

  1. mask = df['A'].isin([1]) #括号中必须为list  
  2. print mask  
  3. # one       True  
  4. # two       True  
  5. # three    False  
  6. # Name: A, dtype: bool  
  7. print df[mask]  
  8. #      A  B  C  
  9. # one  1  2  3  
  10. # two  1  3  4  

2.pandas中的DataFrame如何按第一关键字,第二关键字对其进行排序,这里可以使用sort_values,老版本中为sort_index。

[python] view plain copy

  1. import pandas as pd  
  2. df = pd.DataFrame([[1,2,3],[2,3,4],[2,4,3],[1,3,7]],  
  3.                   index = ['one','two','three','four'],columns = ['A','B','C'])  
  4. print df  
  5. #        A  B  C  
  6. # one    1  2  3  
  7. # two    2  3  4  
  8. # three  2  4  3  
  9. # four   1  3  7  
  10. df.sort_values(by=['A','B'],ascending=[0,1],inplace=True)  
  11. print df  
  12. #        A  B  C  
  13. # two    2  3  4  
  14. # three  2  4  3  
  15. # one    1  2  3  
  16. # four   1  3  7  

猜你喜欢

转载自blog.csdn.net/orangefly0214/article/details/81108785