如何在Python数据帧中显示非空行和列?

如何在Python数据帧中显示非空行和列?

在本教程中,我们将学习如何使用一些库在Python数据帧中显示非空行和列。我们将在本教程中使用Pandas库。

数据帧是类似于Excel表格或SQL表的pandas数据结构。它是一个二维标记的数据结构,可以容纳多个可能具有不同类型的数据的列,例如整数,浮点数,字符串等。Pandas提供了一个强大的数据结构“数据帧”和其他有用的方法来处理海量数据。

方法1

一种显示数据帧中非空行和列的方法是使用dropna()方法。它返回一个将原始数据帧中包含空值的所有列和行删除的数据帧。

语法

要使用dropna()方法显示图像,您需要按照以下语法操作-

df = df.dropna()
print(df)
Bash

我们在数据帧df上使用“dropna()”方法,对于其中想要过滤掉所有空值的数据帧。然后我们将使用print()函数打印它。

例子

在此示例中,我们使用Pandas库。因此,我们首先会导入Pandas库并给它一个别名“pd”。名为“data”的字典包含一些带有其键表示列的示例数据,其值是表示行的列表。在这种情况下,我们故意将某些值设置为“None”,以演示“dropna()”方法的用法。然后,我们将把这个字典传递给pandas DataFrame()函数,该函数使用“pd.DataFrame(data)”返回一个数据帧对象。

然后,我们将在这个“df”数据帧上使用dropna()方法来删除空行和列。然后我们将使用print()函数显示所需的数据帧。

import pandas as pd

# Create a sample dataframe with null values
data = {'Name': ['Alice', 'Bob', None, 'David', 'Eva'],
        'Age': [25, 30, None, 20, 28],
        'Gender': ['F', 'M', 'M', 'M', None],
        'City': [None, 'San Francisco', 'Boston', 'Los Angeles', None]}
df = pd.DataFrame(data)

# Drop rows and columns with null values
df = df.dropna()

# Display the resulting dataframe
print(df)
Bash

输出

    Name   Age Gender           City
1    Bob  30.0      M  San Francisco
3  David  20.0      M    Los Angeles
Bash

例子

在此示例中,我们使用pandas的DataFrame()函数创建一个带有一些空值的示例数据帧。 然后,我们使用’dropna()’方法在此数据帧上删除所有包含少于2个非空值的行,并将其’thresh’参数的值设置为2。

我们将“dropna()”函数的’inplace’参数的值设置为’True’,这指定将原始数据帧替换为包含删除非空值的新数据帧。 ‘inplace’参数的默认值为’True’。在这种情况下,它将返回数据帧并不更改原始数据帧。最后,我们将使用print()函数显示所得到的数据帧。

import pandas as pd

# Create a sample dataframe with null values
data = {'Name': ['Alice', 'Bob', None, 'David', 'Eva'],
        'Age': [25, 30, None, 20, None],
        'Gender: ['F', 'M', 'M', 'M', None],
        'City': [None, 'San Francisco', 'Los Angeles', 'Boston', None]}
df = pd.DataFrame(data)

# Drop rows and columns with null values in-place
df.dropna(thresh=2, inplace=True)

# Display the resulting dataframe
print(df)
Bash

输出

    Name   Age Gender           City
0  Alice  25.0      F           None
1    Bob  30.0      M  San Francisco
2   None   NaN      M    Los Angeles
3  David  20.0      M         Boston
Bash

方法2

另一种显示数据帧中非空值的方法是使用 ‘notnull()’ 方法。这是一个返回布尔类型数据帧的 Pandas 函数,该数据帧与原始数据帧的形状相同,其中 ‘True’ 表示非空值,’False’ 表示空值。

语法

要使用 notnull() 方法显示非空值,需要按照以下语法进行操作

df = df[df.notnull().all(axis=1)]
print(df)
Bash

我们在数据帧 ‘df’ 上使用 ‘notnull()’ 方法来过滤空值。带有 ‘axis’ 参数的 ‘all()’ 方法仅返回仅包含非空值的行。然后使用 print() 函数打印结果数据帧。

示例

在此示例中,我们首先创建一个带有一些空值的自定义数据帧。然后我们使用 ‘notnull()’ 方法创建一个布尔类型数据帧,在该数据帧中,空值表示为 ‘False’,非空值表示为 ‘True’。我们在此布尔类型数据帧上使用带有参数 ‘axis’ 设为 ‘1’ 的 ‘all()’ 方法,它仅返回所有值均为非空的行。

最后,我们将过滤后的结果数据帧分配回原始数据帧变量 ‘df’,并使用 print() 函数显示结果数据帧。

import pandas as pd

# 创建一个样例数据帧
data = {'Name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva'],
        'Age': [25, 30, None, 20, 28],
        'Gender': ['F', 'M', 'M', 'M', None],
        'City': ['New York', 'San Francisco', 'Los Angeles', 'Boston', None]}
df = pd.DataFrame(data)

# 过滤包含非空值的行和列
df = df[df.notnull().all(axis=1)]

# 显示过滤后的结果数据帧
print(df)
Bash

输出

    Name   Age Gender           City
0  Alice  25.0      F       New York
1    Bob  30.0      M  San Francisco
3  David  20.0      M         Boston
Bash

结论

我们学习了如何使用不同的方法来显示 Python 数据帧中的非空值。通过使用 Pandas DataFrame() 函数创建由自定义数据组成的数据帧。讨论的不同方法非常有用,可以过滤包含非空值的行和列,在处理大型数据集时很实用,因为空值通常会在数据分析和建模过程中引起问题。通过删除这些空值,我们可以确保数据干净准确,从而充分利用可用数据。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册