x
一、使用Pandas的DataFrame.dropna()函数
在使用Pandas处理数据时,如果要删除dataframe对象df中a列包含缺失值行,可以使用DataFrame.dropna()函数,方法如下: 示例:
# 导入Pandas模块 import pandas as pd # 定义一个dataframe对象df
df = pd.DataFrame({'a': [1, 2, 3, float('nan')], 'b': [float('nan'), 2, 3, 4]}) # 输出源数据df print(df)
# 删除dataframe对象df中a列包含缺失值行 df = df.dropna(subset=['a']) # 输出处理后的数据df print(df) 输出结果如下: a b 0 1 NaN 1 2 2.0 2 3 3.0
- 1 -
3 NaN 4.0 a b 0 1 NaN 1 2 2.0 2 3 3.0
以上代码实现了删除dataframe对象df中a列包含缺失值行的功能,其中:
1)DataFrame.dropna()函数:该函数可以删除dataframe对象中指定列(如a列)中包含缺失值的行;
2)subset参数:该参数可以指定函数删除的列,如指定删除a列中包含缺失值的行时,需使用subset=['a']。 二、使用Pandas的DataFrame.drop()函数
此外,也可以使用DataFrame.drop()函数来删除dataframe对象df中a列包含缺失值行,方法如下: 示例:
# 导入Pandas模块 import pandas as pd # 定义一个dataframe对象df
df = pd.DataFrame({'a': [1, 2, 3, float('nan')], 'b': [float('nan'), 2, 3, 4]}) # 输出源数据df print(df)
- 2 -
# 查询dataframe对象df中a列包含缺失值的行索引 na_index = df[df['a'].isna()].index # 删除dataframe对象df中a列包含缺失值行 df = df.drop(na_index) # 输出处理后的数据df print(df) 输出结果如下: a b 0 1 NaN 1 2 2.0 2 3 3.0 3 NaN 4.0 a b 0 1 NaN 1 2 2.0 2 3 3.0
以上代码实现了删除dataframe对象df中a列包含缺失值行的功能,其中:
1)DataFrame.drop()函数:该函数可以根据传入的索引及行号来删除dataframe对象中的行;
2)isna()函数:该函数可以查询dataframe对象df中a列包含缺失值的行索引,从而通过索引删除a列包含缺失值的行。
- 3 -
- 4 -
因篇幅问题不能全部显示,请点此查看更多更全内容