当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas DataFrame.dropna()用法及代码示例


Python是进行数据分析的一种出色语言,主要是因为以数据为中心的python软件包具有奇妙的生态系统。 Pandas是其中的一种,使导入和分析数据更加容易。

有时,csv文件具有空值,该空值随后在 DataFrame 中显示为NaN。 Pandas dropna()方法允许用户以不同的方式分析和删除具有Null值的行/列。

用法:


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

参数:

  • axis:axis接受行/列的int或字符串值。对于整数,输入可以为0或1;对于字符串,输入可以为“索引”或“列”。
    how:如何仅采用两种字符串值(“任意”或“全部”)。如果ANY值为Null,则“ any”删除行/列,而仅当ALL值为null时,“ all”删除行/列。
    thresh:thresh取整数值,该值告诉您要减少的na值的最小值。
    subset:它是一个数组,将删除过程限制为通过列表传递行/列。
    inplace:如果为True,则它是一个布尔值,它会在数据帧本身中进行更改。

有关在“代码中使用”的CSV文件的链接,请单击此处。

范例1:删除具有至少1个空值的行。

读取数据帧,并删除所有具有任何Null值的行。比较新旧数据帧的大小,以查看有多少行的值至少为1 Null。

# importing pandas module 
import pandas as pd 
  
# making data frame from csv file 
data = pd.read_csv("nba.csv") 
  
# making new data frame with dropped NA values 
new_data = data.dropna(axis = 0, how ='any') 
  
# comparing sizes of data frames 
print("Old data frame length:", len(data), "\nNew data frame length:",  
       len(new_data), "\nNumber of rows with at least 1 NA value:", 
       (len(data)-len(new_data)))

输出:

Old data frame length: 458 
New data frame length: 364 
Number of rows with at least 1 NA value: 94

由于差异为94,因此有94行在任何列中至少具有1 Null值。

范例2:更改轴以及使用参数和方式

制作两个数据帧。具有所有值= none的列将添加到新的 DataFrame 中。验证列名以查看是否正确插入了Null列。然后在删除NaN值之前和之后比较“​​列数”。

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

输出:

['Name' 'Team' 'Number' 'Position' 'Age' 'Height' 'Weight' 'College'
 'Salary'] 
 ['Name' 'Team' 'Number' 'Position' 'Age' 'Height' 'Weight' 'College'
 'Salary' 'Null Column']

Column number before dropping Null column
 9 10

Column number after dropping Null column
 9 9


相关用法


注:本文由纯净天空筛选整理自Kartikaybhutani大神的英文原创作品 Python | Pandas DataFrame.dropna()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。