如何从 Pandas Series 对象中删除一组元素?
在 Pandas Series 构造函数中,有一个名为 drop() 的方法,用于从 Pandas Series 对象中删除指定的行。它不会更新原始 Series 对象,而是会返回另一个不包含已删除行的 Series 对象。
我们可以将此 drop() 方法用于基于标签和基于位置索引的 Series 对象。
如果 Series 对象的索引中找不到指定的行标签,则会引发 KeyError。我们可以通过将 errors 参数从 raise 设置为 ignore 来抑制错误。我们还有其他一些参数:labels、axis、level、inplace 和 raise。
示例 1
# import pandas package
import pandas as pd
# Creating Series objects
sr = pd.Series([35, 39, 45, 2, 47, 89, 48, 71, 55, 19])
print('Series object:',sr)
# Remove list of elements
result = sr.drop([2,4,6])
# display output
print(result)解释
在下面的示例中,我们将从 Series 对象中删除一组行。最初,我们使用 Python 整型列表创建了一个 Pandas Series,索引标签是自动创建的范围索引值(基于位置的索引值)。
输出
Series object: 0 35 1 39 2 45 3 2 4 47 5 89 6 48 7 71 8 55 9 19 dtype: int64 0 35 1 39 3 2 5 89 7 71 8 55 9 19 dtype: int64
我们通过使用 Python 列表对象指定元素的索引值,从 Series 对象“sr”中删除了一组行。在这个例子中,删除了 [2,4,6] 行。
示例 2
# import pandas package
import pandas as pd
# Creating Series objects
sr = pd.Series([43, 3, 16, 84, 69, 20, 37, 44, 94, 48], index=list("ABCDEFGHIJ"))
print('Series object:',sr)
# Remove list of elements
result = sr.drop(['D', 'E', 'J'])
# display output
print(result)解释
在下面的示例中,我们使用带标签索引创建了一个 Pandas Series。我们通过将标签名称发送到 drop() 方法,从 Series 对象中删除名为“C”的行。
输出
Series object: A 43 B 3 C 16 D 84 E 69 F 20 G 37 H 44 I 94 J 48 dtype: int64 A 43 B 3 C 16 F 20 G 37 H 44 I 94 dtype: int64
我们已成功从带标签的 Series 对象“sr”中删除了行“D”、“E”、“J”。
广告
数据结构
网络
关系数据库管理系统 (RDBMS)
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP