如何使用Python仅删除CSV中的一行?

如何使用Python仅删除CSV中的一行?

在本教程中,我们将学习如何使用Python仅删除CSV中的一行。我们将使用Pandas库。Pandas是用于数据分析的开源库;它是最受欢迎的Python库之一,用于研究数据和见解。它包括多个功能以对数据集执行操作。可以将其与其他库(如NumPy)结合使用以执行特定的数据函数。

我们将使用 drop() 方法从任何CSV文件中删除行。在本教程中,我们将用三个示例说明如何使用相同的方法从CSV文件中删除行。在本教程结尾时,您将熟悉概念并能够从任何CSV文件中删除行。

语法

这是从数组中删除多个行的语法。

#drop方法
data = pd.read_csv("my file")
data = data.drop(data.index[index_number])
print(data)
Bash

在此语法中,我们首先读取数据框,然后使用该方法通过索引传递并删除它们。最后,我们打印更新的数据。

示例1:从CSV文件中删除最后一行

这是一个示例,我们使用drop方法删除了最后一行。首先,我们使用 _readcsv() 将CSV文件读取为数据框,然后使用drop()方法删除索引为-1的行。然后,我们使用索引参数指定要删除的索引。最后,我们使用 _tocsv() 将更新的DataFrame写回CSV文件,设置 index=False 以避免将行索引写入文件。

import pandas as pd
df = pd.read_csv('How_to_delete_only_one_row_in_CSV_with_Python.csv')
df = df.drop(df.index[-1])
df.to_csv('How_to_delete_only_one_row_in_CSV_with_Python.csv', index=False)
Bash

输出

运行代码之前的CSV文件

如何使用Python仅删除CSV中的一行?

运行代码之后的CSV文件 −

如何使用Python仅删除CSV中的一行?

示例2:根据标签删除行

这里是与上面类似的示例;在此示例中,我们正在使用标签‘row’删除行。在此示例中,我们使用read_csv()读取CSV文件,但这次我们使用index_m参数将‘id’列设置为索引。然后,我们使用drop()方法删除带有索引标签‘row’的行。然后,我们使用to_csv()将更新的DataFrame写回CSV文件,而无需设置index=False,因为行标签现在是CSV文件的一部分。

import pandas as pd
df = pd.read_csv('How_to_delete_only_one_row_in_CSV_with_Python.csv', index_col='id')
df = df.drop('row1')
df.to_csv('How_to_delete_only_one_row_in_CSV_with_Python.csv', index=True)
Bash

输出

运行代码之前的CSV文件−

如何使用Python仅删除CSV中的一行?

运行代码之后的CSV文件−

如何使用Python仅删除CSV中的一行?

示例3:根据条件删除行

在此示例中,我们首先读取CSV文件,然后使用drop()方法删除’Name’列中的值等于’John’的行。我们通过首先使用布尔索引选择满足条件的行来执行此操作。最后,我们使用to_csv()将更新的DataFrame写回CSV文件,再次设置index=False。

import pandas as pd
df = pd.read_csv('example_3.csv')
df = df.drop(df[df.Name == 'Ankita'].index)
df.to_csv('example_3.csv', index=False)
Bash

输出

运行代码之前的CSV文件−

如何使用Python仅删除CSV中的一行?

运行代码之后的CSV文件−

如何使用Python仅删除CSV中的一行?

结论

我们知道,pandas是一款强大而灵活的Python库,用于数据操作和分析。它提供了高性能的数据结构。我们演示了如何使用drop方法从csv文件中删除行。根据需要,我们可以通过索引、标签或条件来指定要删除的行。这种方法允许从csv文件中删除一个或多个行。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册