Python技术迷

Pandas 教程-Pandas DataFrame.dropna()

整理:python架构师

如果您的数据集包含空值,我们可以使用 dropna() 函数来分析和删除数据集中的行/列。

语法:

DataFrameName.dropna(axis=0, how='any', thresh=None, subset=None, inplace=False)  

参数:

  • axis :

    {0 或 'index',1 或 'columns'},默认值 0

    它接受整数或字符串值用于行/列。对于整数,输入可以是 0 和 1,对于字符串,输入可以是 'index' 或 'columns'。

    • 0,或 'index':删除包含缺失值的行。

    • 1,或 'columns':删除包含缺失值的列。

  • how :

    它确定当我们至少有一个 NA 或所有 NA 时,从 DataFrame 中删除行或列。

    它采用两种类型的字符串值之一('any' 或 'all')。

    • any:如果任何值为 null,则删除行/列。

    • all:仅在所有值为 null 时才删除。

  • thresh: 它接受整数值,定义要删除的最小 NA 值数量。

  • subset: 它是一个数组,通过列表限制删除过程。

  • inplace: 它返回一个布尔值,如果为 True,则在数据框本身进行更改。

专属福利 
👉点击领取:最全Python资料合集

返回值

它返回已删除 NA 条目的 DataFrame。

首先,我们将采用一个包含任何列的 csv 文件来演示它将如何从数据集中删除任何列。
import pandas as pd  aa = pd.read_csv("aa.csv")  aa.head()
输出
NameHire DateSalaryLeaves Remaining
0 John Idle 03/15/1450000.010
1 Smith Gilliam06/01/1565000.08
2 Parker Chapman05/12/1445000.010
3 Jones Palin11/01/1370000.03
4 Terry Gilliam08/12/1448000.07
5 Michael Palin05/23/1366000.08

代码:

# importing pandas module   import pandas as pd    # making data frame from csv file   info = pd.read_csv("aa.csv")     # making a copy of old data frame   copy = pd.read_csv("aa.csv")   # creating value with all null values in new data frame   copy["Null Column"]= None  # checking if column is inserted properly    print(info.columns.values, "\n", copy.columns.values)   # comparing values before dropping null column   print("\nColumn number before dropping Null column\n",          len(info.dtypes), len(copy.dtypes))   # dropping column with all null values   copy.dropna(axis = 1, how ='all', inplace = True)   # comparing values after dropping null column   print("\nColumn number after dropping Null column\n",         len(info.dtypes), len(info.dtypes))    

输出

['  Name    Hire Date   Salary  Leaves Remaining']  [' Name    Hire Date   Salary  Leaves Remaining' 'Null Column']
Column number before dropping Null column 1 2
Column number after dropping Null column 1 1
上面的代码从数据集中删除了 null 列,并返回了一个新的 DataFrame。
Image
 1
Image
热门推荐
Image