在Python Pandas中原地填入多列数据

在Python Pandas中原地填入多列数据

在这篇文章中,我们要写Python脚本,使用pandas库在Python中填充多列的位置。数据框是一种二维数据结构,可以用CSV、Excel、.dB、SQL格式存储。我们将使用Python的Pandas库来填补数据框中的缺失值。

在多列中原地填充

首先在Python中用pandas创建一个数据集

# Importing Required Libraries
import pandas as pd
import numpy as np
 
# Creating a sample dataframe with NaN values
dataframe = pd.DataFrame({'Count': [1, np.nan,
                                    np.nan, 4,
                                    2, np.nan,
                                    np.nan, 5, 6],
                           
    'Name': ['Geeks','for', 'Geeks','a','portal','for',
             'computer', 'Science','Geeks'],
                          'Category':list('ppqqrrsss')})
 
# Printing The dataframe
display(dataframe)

输出:

在Python Pandas中原地填入多列数据

在原地填入多列

例子1:用固定值来填补缺失的列值

我们可以使用fillna()函数对一个数据框架中由数值字典定义的每一列进行缺失值的估算。这种方法的局限性在于,我们只能使用常量值来进行填补。

# Importing Required Libraries
import pandas as pd
import numpy as np
 
# Creating a sample dataframe with NaN values
dataframe = pd.DataFrame({'Count': [1, np.nan, np.nan, 4, 2,
                                    np.nan,np.nan, 5, 6],
                           
    'Name': ['Geeks','for', 'Geeks','a','portal','for',
             'computer', 'Science','Geeks'],
                          'Category':list('ppqqrrsss')})
 
# Creating a constant value for column Count
constant_values = {'Count': 10}
dataframe = dataframe.fillna(value = constant_values)
 
# Printing the dataframe
display(dataframe)

输出:

在Python Pandas中原地填入多列数据

在原地填入多列

例子2:用mean()填补缺失的列值

在这个方法中,数值是由一个叫做mean()的方法定义的,这个方法找出了给定列的现有数值的平均值,然后在每个缺失的(NaN)数值中归入平均值。

# Importing Required Libraries
import pandas as pd
import numpy as np
 
# Creating a sample dataframe with NaN values
dataframe = pd.DataFrame({'Count': [1, np.nan, np.nan, 4, 2,
                                    np.nan,np.nan, 5, 6],
                           
    'Name': ['Geeks','for', 'Geeks','a','portal','for',
             'computer', 'Science','Geeks'],
                          'Category':list('ppqqrrsss')})
 
 
# Filling Count column with mean of Count column
dataframe.fillna(dataframe['Count'].mean(), inplace = True)
 
# Printing the Dataframe
display(dataframe)

输出:

在Python Pandas中原地填入多列数据

在原地填入多列

实例3:用mode()填补缺失的列值

模式是指在一组数据值中最常出现的数值。如果X是一个离散的随机变量,模式是概率质量函数达到最大值的值x。换句话说,它是最有可能被取样的值。

# Importing Required Libraries
import pandas as pd
import numpy as np
 
# Creating a sample dataframe with NaN values
dataframe = pd.DataFrame({'Count': [1, np.nan, np.nan,
                                    1, 2, np.nan,np.nan,
                                    5, 1],
                           
    'Name': ['Geeks','for', 'Geeks','a','portal','for',
             'computer', 'Science','Geeks'],
                          'Category':list('ppqqrrsss')})
 
# Using Mode() function to impute the values using fillna
dataframe.fillna(dataframe['Count'].mode()[0], inplace = True)
 
# Printing the Dataframe
display(dataframe)

输出:

在Python Pandas中原地填入多列数据

在原地填入多列

例子4:用多个值来填补缺失的列值

在这里,我们要用定义的值来填补缺失列中的多个值。

# Importing Required Libraries
import pandas as pd
import numpy as np
 
# Creating a sample dataframe with NaN values
dataframe = pd.DataFrame({'Count': [1, np.nan,
                                    np.nan, 4,
                                    2, np.nan,
                                    np.nan, 5, 6],
                           
    'Name': ['Geeks','for', np.nan,'a','portal','for',
             'computer', np.nan,'Geeks'],
                          'Category':list('ppqqrrsss')})
dataframe.fillna({'Count':'Unknown', 'Name': 'GFG'}, inplace=True)
 
#view DataFrame
display(dataframe)

输出:

在Python Pandas中原地填入多列数据

在原地填入多列

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程