📜  pandas 系列按索引删除元素 - Python (1)

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

Pandas系列按索引删除元素 - Python

在Pandas中,我们可以通过索引来删除数据。有以下两种方式来删除索引:

方法一:使用drop()函数删除指定的索引

drop()函数需要传入要删除的索引列表,以及轴向参数来指定行或列。例如:

import pandas as pd

# 创建一个DataFrame对象
data = {'name': ['Tom', 'John', 'Bob', 'Mary'],
        'age': [20, 30, 25, 28],
        'gender': ['Male', 'Male', 'Male', 'Female']}
df = pd.DataFrame(data, index=['a', 'b', 'c', 'd'])

# 删除索引为'a'和'b'的行
df = df.drop(['a', 'b'], axis=0)
print(df)

输出结果:

   name  age  gender
c   Bob   25    Male
d  Mary   28  Female
方法二:使用索引器[]和~操作符删除指定的索引

这种方法需要使用索引器[]和~操作符结合使用,使用~操作符对索引进行取反,然后传入索引器[]中即可。例如:

import pandas as pd

# 创建一个Series对象
data = {'Tom': 20, 'John': 30, 'Bob': 25, 'Mary': 28}
s = pd.Series(data, index=['Tom', 'John', 'Bob', 'Mary'])

# 删除索引为'Tom'和'John'的元素
s = s[~s.index.isin(['Tom', 'John'])]
print(s)

输出结果:

Bob     25
Mary    28
dtype: int64

这里需要注意,在使用[]符号来切片或者选择行或列的时候,需要注意:[]中的区间是左闭右闭的,而.loc[]中的区间是左闭右开的。在删除索引的时候,要根据具体的需求使用不同的方法。

以上就是在Pandas系列中按索引删除元素的方法,我们可以根据具体的需求使用不同的方法来进行操作。