Advertisement
Guest User

Untitled

a guest
Sep 22nd, 2017
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.55 KB | None | 0 0
  1. df = pd.DataFrame(['ADc','Abc','AEc'],columns = ['Test'],index=[0,1,2])
  2. df.sort(columns=['Test'],axis=0, ascending=False,inplace=True)
  3.  
  4. In [1]: l1 = ['ADc','Abc','AEc']
  5. In [2]: l1.sort(reverse=True)
  6. In [3]: l1
  7. Out[3]: ['Abc', 'AEc', 'ADc']
  8.  
  9. In [4]: df = pd.DataFrame(['ADc','Abc','AEc'],columns = ['Test'],index=[0,1,2])
  10. In [5]: df['test'] = df['Test'].str.lower()
  11. In [6]: df.sort(columns=['test'], axis=0, ascending=True, inplace=True)
  12. In [7]: df.drop('test', axis=1, inplace=True)
  13. In [8]: df
  14. Out[8]:
  15. Test
  16. 1 Abc
  17. 0 ADc
  18. 2 AEc
  19.  
  20. df = df.loc[df["Test"].str.lower().order().index]
  21.  
  22. import pandas as pd
  23.  
  24. df = pd.DataFrame([['q', '1'],['a', '1'],['B', '1'],['C', '1'],
  25. ['q', '0'],['a', '0'],['B', '0'],['C', '0']])
  26.  
  27. SORT_INDEX1 = 1
  28. SORT_INDEX2 = 0
  29.  
  30. # Cannot change sorting algorithm used internally by pandas.
  31. df_default = df.sort_values(by=[SORT_INDEX1, SORT_INDEX2])
  32.  
  33. # Use tuple of (index, value to sort by) to get a list of sorted indices, obtained through unzipping.
  34. df_new = df.reindex(list(zip(*sorted(zip(df.index, df[SORT_INDEX2]), key=lambda t: t[1].lower())))[0])
  35. .sort_values(by=SORT_INDEX1)
  36.  
  37. print('Original dataframe:')
  38. print(df)
  39.  
  40. print('Default case-sensitive sort:')
  41. print(df_default)
  42.  
  43. print('Case-insensitive sort:')
  44. print(df_new)
  45.  
  46. Original dataframe:
  47. 0 1
  48. 0 q 1
  49. 1 a 1
  50. 2 B 1
  51. 3 C 1
  52. 4 q 0
  53. 5 a 0
  54. 6 B 0
  55. 7 C 0
  56. Default case-sensitive sort:
  57. 0 1
  58. 6 B 0
  59. 7 C 0
  60. 5 a 0
  61. 4 q 0
  62. 2 B 1
  63. 3 C 1
  64. 1 a 1
  65. 0 q 1
  66. Case-insensitive sort:
  67. 0 1
  68. 5 a 0
  69. 6 B 0
  70. 7 C 0
  71. 4 q 0
  72. 1 a 1
  73. 2 B 1
  74. 3 C 1
  75. 0 q 1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement