[英]Finding row in pandas df and performing a diff relative to that row location
[英]Finding Pandas row location
假設我們有兩個數據幀,其中一個是另一個的一部分。
如果要遍歷較小的DF,如何找到較大的DF中的索引,然后找到它所在的行?
所以會是這樣的:
for idx in smaller.index:
loc = bigger.ix[ix]**.row_location???**
while not fin:
looking_for_something = bigger.iloc[loc]
if looking_for_something != criteria:
loc += 1
else:
fin = 1
我敢肯定這很簡單,但是我似乎找不到實現此目的的方法。
如果smaller
是一片bigger
,是不是你在尋找的信息bigger
已經可以在smaller
?
如果不是,也許有一些bigger
列而不是smaller
列。 (也許應該定義smaller
列以包括這些列?)在任何情況下,您都可以使用pd.merge
或pd.merge
smaller.join(bigger, how='inner', ...)
將bigger
的行與smaller
行共享相同的索引。 一口氣就能完成您要尋找的所有比賽
for idx in smaller.index:
loc = bigger.ix[ix]**.row_location???**
而且,它將更快。 通常,逐行執行操作不是獲得結果的最快方法。 最好從連接,合並,groupbys或一次在整個陣列上運行的此類操作來考慮。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.