如何從 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