pandas--DataFrame--数据切片/筛选/取值

忘是亡心i 2023-09-25 22:14 230阅读 0赞
  1. import pandas as pd
  2. ab = 'abcdefghij'
  3. list1=list(ab.upper())
  4. ad = 'abcdefghijklmnopqrstuvwxyz'
  5. index1=[i+j for i in ad for j in ad][:20]
  6. #print(index1)
  7. data = pd.DataFrame([[j for j in range(i, 10 + i)] for i in range(20)], columns=list1, index=index1)
  8. data
  9. #取固定行/列/值及按条件筛选
  10. # 取索引为 aa, ae, af 的行
  11. data.loc[['aa', 'ae', 'af']]
  12. # 取 A, C, F 列
  13. data[['A','C', 'F']]
  14. data.loc[:, ['A', 'C', 'F']]
  15. # 取 C 列 索引为 ae 的值
  16. data['C']['ae']
  17. data.loc['ae', 'C']
  18. data.at['ae', 'C']
  19. # 取C列值大于10的数据
  20. data[data['C'] > 10]
  21. data.loc[data.C > 10]
  22. # 取ak行值大于15的列
  23. data.loc[:, data.loc['ak'] > 15]
  24. # 取D列值在[7, 9, 13]中的数据
  25. data[data['D'].isin([7, 9, 13])]
  26. #行切片
  27. # 取前10行
  28. data.head(10)
  29. data.iloc[:10]
  30. # 取第3-15行
  31. data.iloc[2:15]
  32. # 取后10行
  33. data.tail(10)
  34. data.iloc[-10:]
  35. # 取奇数行
  36. data.iloc[::2]
  37. # 取偶数行
  38. data.iloc[1::2]
  39. # 取索引为af及其之后的行
  40. data.loc['af':]
  41. # 取索引为af及其之后的奇数行(af为第1行)
  42. data.loc['af'::2]
  43. # 取索引af及ai之间的行(包含边界)
  44. data.loc['af':'ai']
  45. #列切片
  46. # 取前5列
  47. data.iloc[:, :5]
  48. # 取第3-5列
  49. data.iloc[:, 2:5]
  50. # 取后5列
  51. data.iloc[:, -5:]
  52. # 取奇数列
  53. data.iloc[:, ::2]
  54. # 取偶数列
  55. data.iloc[:, 1::2]
  56. # 取索引为C及其之后的列
  57. data.loc[:, 'C':]
  58. # 取索引为C及其之后的奇数列(af为第1行)
  59. data.loc[:, 'C'::2]
  60. # 取索引C及F之间的列(包含边界)
  61. data.loc[:, 'C':'F']
  62. #行列组合切片,取前10行的前5列
  63. data.iloc[:10, :5]

a094ccf852514ebfa8afdc8611804424.jpeg

发表评论

表情:
评论列表 (有 0 条评论,230人围观)

还没有评论,来说两句吧...

相关阅读