📜  Python - 删除类似第 K 列元素的行(1)

📅  最后修改于: 2023-12-03 15:33:56.639000             🧑  作者: Mango

Python - 删除类似第 K 列元素的行

在处理表格数据时,我们经常需要删除某一列或某些行。本篇文章将介绍如何使用 Python 删除表格数据中类似第 K 列的元素所在的行。以下是两种方法。

方法一:使用 Pandas
import pandas as pd

# 创建 DataFrame
df = pd.DataFrame({'A': [1, 2, 3, 4, 5], 'B': [6, 7, 8, 9, 10], 'C': [11, 12, 13, 14, 15]})

# 删除列索引为 1 的列
df = df.drop(df.columns[1], axis=1)

# 删除值等于 7 的行
df = df.drop(df[df['B'] == 7].index)

# 打印结果
print(df)

输出:

   A   C
0  1  11
2  3  13
3  4  14
4  5  15

上述代码使用了 Python 的数据处理库 Pandas(需要先安装),首先创建了一张表格(DataFrame)df。然后使用 drop 方法删除了列索引为 1(即第二列)的列,再删除了值等于 7 所在的行。

方法二:使用列表推导式
# 创建二维列表
lst = [[1, 6, 11], [2, 7, 12], [3, 8, 13], [4, 9, 14], [5, 10, 15]]

# 删除第二列
lst = [row[:1] + row[2:] for row in lst]

# 删除值等于 7 的行
lst = [row for row in lst if row[1] != 7]

# 打印结果
for row in lst:
    print(row)

输出:

[1, 11]
[3, 13]
[4, 14]
[5, 15]

上述代码中,我们首先创建了一个二维列表(list)lst,然后使用列表推导式删除了第二列(即 lst 中每个元素的第二个数),再删除了列表中所有含有第二个元素为 7 的元素(即行)。

两种方法的效果一致,可以根据实际需求选择使用。