DataFrame.fillna

DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None)
使用指定的方法填充NA/NaN值。

Parameters

value 用来填充空的值
method ‘backfill’,’bfill’,’pad’,’ffill’
axis 0 or index:填充行,1 or columns:填充列
inplace False:返回一个副本;True:就地执行操作并返回None
limit 要填充空白的最大数目
downcast 表示如果可能要向下转换的类型

Example:value

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [None, 2.0, 3.0],
  5. 'color': [None, 'black', None]})
  6. df.fillna(0)
  7. ----------------------------------------------
  8. site age price color
  9. 0 google 18 0.0 0
  10. 1 baidu 39 2.0 black
  11. 2 wiki 22 3.0 0
  12. df.fillna(value={'price': 1.0, 'color': 'red'})
  13. ----------------------------------------------
  14. site age price color
  15. 0 google 18 1.0 red
  16. 1 baidu 39 2.0 black
  17. 2 wiki 22 3.0 red

Example:method

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [None, 2.0, 3.0],
  5. 'color': [None, 'black', None]})
  6. site age price color
  7. 0 google 18 NaN None
  8. 1 baidu 39 2.0 black
  9. 2 wiki 22 3.0 None
  10. df.fillna(method="backfill")
  11. -----------------------------------------------
  12. site age price color
  13. 0 google 18 2.0 black
  14. 1 baidu 39 2.0 black
  15. 2 wiki 22 3.0 None
  16. df.fillna(method="ffill")
  17. -----------------------------------------------
  18. site age price color
  19. 0 google 18 NaN None
  20. 1 baidu 39 2.0 black
  21. 2 wiki 22 3.0 black
  22. df.fillna(method="bfill")
  23. -----------------------------------------------
  24. site age price color
  25. 0 google 18 2.0 black
  26. 1 baidu 39 2.0 black
  27. 2 wiki 22 3.0 None
  28. df.fillna(method="pad")
  29. -----------------------------------------------
  30. site age price color
  31. 0 google 18 NaN None
  32. 1 baidu 39 2.0 black
  33. 2 wiki 22 3.0 black

Example:limit

  1. import pandas as pd
  2. df = pd.DataFrame({'site':['google', 'baidu', 'wiki'],
  3. 'age':[18, 39, 22],
  4. 'price': [None, 2.0, 3.0],
  5. 'color': [None, 'black', None]})
  6. df.fillna(value={'price': 1.0, 'color': 'red'}, limit=1)
  7. ----------------------------------------------------------
  8. site age price color
  9. 0 google 18 1.0 red
  10. 1 baidu 39 2.0 black
  11. 2 wiki 22 3.0 None