Pandas – DataFrame.fillna() 替换DataFrame中的空值

Pandas – DataFrame.fillna() 替换DataFrame中的空值

Python是一种做数据分析的伟大语言,主要是因为以数据为中心的Python软件包的奇妙生态系统。 Pandas 是这些包中的一个,它使导入和分析数据变得更加容易。

有时csv文件中有空值,这些空值后来在DataFrame中显示为NaN。就像pandas dropna()方法管理并从DataFrame中移除空值一样,fillna()方法管理并让用户用自己的一些值替换NaN值。

语法:

DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)

参数:

value : 填充静态的、字典的、数组的、系列的或DataFrame的,而不是NaN。
method : 如果用户没有传递任何值,则使用该方法。Pandas有不同的方法,如bfill、backfill或fill,它们分别在前向索引或前向/后向的位置上填入数值。
axis: axis对于行/列来说,需要输入int或string值。对于整数,输入可以是0或1;对于字符串,输入 “index “或 “columns”。
inplace: 这是一个布尔值,如果为真,则在DataFrame本身中进行更改。
limit : 这是一个整数值,用于指定后续的前向/后向NaN值填充的最大数量。
downcast : 它需要一个dict,指定将什么d类型下移到什么类型。比如Float64到int64。
**kwargs : 任何其他关键字参数

关于代码中使用的CSV文件的链接,请点击这里

例子#1:用静态值替换NaN值。

在更换之前。

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
nba

输出:
DataFrame.fillna() 替换DataFrame中的空值

替换之后。
在下面的例子中,学院列中的所有空值都被替换为 “无学院 “字符串。首先,从CSV中导入DataFrame,然后选择College列并对其使用fillna()方法。

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
# replacing na values in college with No college
nba["College"].fillna("No College", inplace = True)
  
nba

输出:
DataFrame.fillna() 替换DataFrame中的空值

例子#2:使用方法参数

在下面的例子中,方法被设置为ffill,因此同一列中的值取代了空值。在这个例子中,乔治亚州取代了第4行和第5行的大学列的空值。
同样地,也可以使用bfill、回填和垫层方法。

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
# replacing na values in college with No college
nba["College"].fillna( method ='ffill', inplace = True)
  
nba

输出:
DataFrame.fillna() 替换DataFrame中的空值

例子#3:使用极限

在这个例子中,在fillna()方法中设置了1的限制,以检查函数是否在一次成功替换NaN值后停止替换。

# importing pandas module
import pandas as pd
  
# making data frame from csv file
nba = pd.read_csv("nba.csv")
  
# replacing na values in college with No college
nba["College"].fillna( method ='ffill', limit = 1, inplace = True)
  
nba

输出:
如输出中所示,第4行的大学列被替换,但第5行没有被替换,因为限制被设置为1。
DataFrame.fillna() 替换DataFrame中的空值

赞(0)

猜你喜欢

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址
    Pandas 教程
    Pandas 教程Pandas 简介Pandas 环境配置Pandas 数据结构Pandas 序列(Series)Pandas 创建DataFramePandas DataFrame 读取 添加和删除Pandas 面板(Panel)Pandas DataFrame 属性和方法Pandas Series 属性和方法Pandas 描述性统计Pandas 函数应用Pandas 重新索引(Reindexing)Pandas 迭代Pandas 排序Pandas 字符串和文本数据Pandas 选项和自定义Pandas 索引和选择数据Pandas 统计函数Pandas 窗口函数Pandas 缺失值处理Pandas和Numpy的区别
    Pandas 实例
    Pandas 对象创建Pandas 查看数据Pandas 选择数据Pandas 操作数据如何在Python中把Sklearn数据集转换成Pandas数据框使用pandas和matplotlib 进行绘图
    Pandas 数据处理
    Pandas 数据处理Pandas GroupBy 用法Pandas 合并(merge)Pandas 拼接(concat)Pandas 删除数据Pandas 旋转数据
    Pandas 数据读取与写入
    Pandas 数据读取与写入Pandas 读写csvPandas 读写jsonPandas 读写htmlPandas 读写excelPandas 读取txtPandas 数据库操作Pandas 读写sqlite数据库
    Pandas 常用函数
    Pandas 常用函数
    Pandas DataFrame类
    Pandas DataFrame详解Pandas - DataFrame.dropna()Pandas - DataFrame.fillna() 替换DataFrame中的空值Pandas - dataframe.insert()Pandas - Dataframe.sort_values() part1Pandas - Dataframe.sort_values() part2Pandas - DataFrame.isin()Pandas - DataFrame.where()Pandas - Dataframe.Diplicated()Pandas DataFrame.at介绍Pandas DataFrame.columns函数Pandas DataFrame.dtypes属性Pandas dataframe.info()函数Pandas dataframe.select_dtypes()函数Pandas DataFrame.values属性Pandas DataFrame.axes属性Pandas dataframe.memory_usage()函数Pandas DataFrame.empty属性Pandas DataFrame.astype()函数Pandas dataframe.infer_objects()函数