[英]How to remove and return a row from a pandas dataframe?
我有一個 dataframe 索引 n 記錄(0 - n)。 我想從 dataframe 中刪除“x”索引處的一行並將其存儲在其他地方。 我本質上是在嘗試從 Python 中的列表中執行 pop()。 是否有任何 function 或使用 pandas 數據幀的簡單方法?
我嘗試過使用 drop() 方法,但這只會返回相同的 dataframe 並刪除了行。
dataframe df
row_needed = df.drop([2], axis=0)
)
給定一個 dataframe df:
A B C D
0 x y z y
1 x y y y
2 y e r z
當我刪除索引 1 處的行時,我希望返回以下內容並更新 df:
A B C D
0 x y z y
2 y e r z
返回的行:
1 x y y y
您可以簡單地定義自己的 function 執行就地放置但僅在存儲所需結果之后:
def drop_return(df, index):
row = df.loc[index]
df.drop(index, inplace=True)
return row
用你給定的例子:
In [16]: df
Out[16]:
A B C D
0 x y z y
1 x y y y
2 y e r z
In [17]: drop_return(df, 1)
Out[17]:
A x
B y
C y
D y
Name: 1, dtype: object
In [18]: df
Out[18]:
A B C D
0 x y z y
2 y e r z
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.