这是我的数据框
df = pd.DataFrame({0: {'key': 2, 1: 7, 2: 5, 3: 4, 4: 2, 5: 7}, 1: {'key': 3, 1: 6, 2: 4, 3: 5, 4: 3, 5: 6}, 2: {'key': 4, 1: 3, 2: 3, 3: 4, 4: 4, 5: 3}, 3: {'key': 3, 1: 4, 2: 2, 3: 3, 4: 5, 5: 4}, 4: {'key': 6, 1: 5, 2: 3, 3: 6, 4: 4, 5: 3}, 5: {'key': 2, 1: 4, 2: 6, 3: 7, 4: 3, 5: 2}, 6: {'key': 3, 1: 3, 2: 7, 3: 6, 4: 6, 5: 1}, 7: {'key': 4, 1: 2, 2: 6, 3: 3, 4: 7, 5: 2}, 8: {'key': 3, 1: 1, 2: 7, 3: 4, 4: 6, 5: 3}, 9: {'key': 6, 1: 2, 2: 6, 3: 5, 4: 3, 5: 6}})
0 1 2 3 4 5 6 7 8 9
key 2 3 4 3 6 2 3 4 3 6
1 7 6 3 4 5 4 3 2 1 2
2 5 4 3 2 3 6 7 6 7 6
3 4 5 4 3 6 7 6 3 4 5
4 2 3 4 5 4 3 6 7 6 3
5 7 6 3 4 3 2 1 2 3 6
我需要找到相关索引与从左到右的键行匹配的列。
例如,在索引1处,列6与键行具有相同的值,索引2匹配在列9处的键行,并且之前没有值。可以将相同的逻辑应用于索引3、4和5。
我只需要索引与键值匹配的第一个实例,之后的所有值都没有关系。
预期产量
0 1 2 3 4 5 6 7 8 9 trace
key 2 3 4 3 6 2 3 4 3 6 NaN
1 7 6 3 4 5 4 3 2 1 2 6
2 5 4 3 2 3 6 7 6 7 6 9
3 4 5 4 3 6 7 6 3 4 5 2
4 2 3 4 5 4 3 6 7 6 3 0
5 7 6 3 4 3 2 1 2 3 6 5
我尝试了duplicates的许多变体,但似乎没有任何效果。
参考方案
您可以在检查df中的值等于(idxmax
)键行的位置后,将eq
与沿列的轴一起使用。
df["trace"] = df.iloc[1:, :].eq(df.loc['key', :]).idxmax(axis=1)
print (df)
0 1 2 3 4 5 6 7 8 9 trace
key 2 3 4 3 6 2 3 4 3 6 NaN
1 7 6 3 4 5 4 3 2 1 2 6.0
2 5 4 3 2 3 6 7 6 7 6 9.0
3 4 5 4 3 6 7 6 3 4 5 2.0
4 2 3 4 5 4 3 6 7 6 3 0.0
5 7 6 3 4 3 2 1 2 3 6 5.0
在返回'Response'(Python)中传递多个参数 - python我在Angular工作,正在使用Http请求和响应。是否可以在“响应”中发送多个参数。角度文件:this.http.get("api/agent/applicationaware").subscribe((data:any)... python文件:def get(request): ... return Response(seriali…
Python-Excel导出 - python我有以下代码:import pandas as pd import requests from bs4 import BeautifulSoup res = requests.get("https://www.bankier.pl/gielda/notowania/akcje") soup = BeautifulSoup(res.cont…
Python exchangelib在子文件夹中读取邮件 - python我想从Outlook邮箱的子文件夹中读取邮件。Inbox ├──myfolder 我可以使用account.inbox.all()阅读收件箱,但我想阅读myfolder中的邮件我尝试了此页面folder部分中的内容,但无法正确完成https://pypi.python.org/pypi/exchangelib/ 参考方案 您需要首先掌握Folder的myfo…
Python:如何根据另一列元素明智地查找一列中的空单元格计数? - pythondf = pd.DataFrame({'user': ['Bob', 'Jane', 'Alice','Jane', 'Alice','Bob', 'Alice'], 'income…
R'relaimpo'软件包的Python端口 - python我需要计算Lindeman-Merenda-Gold(LMG)分数,以进行回归分析。我发现R语言的relaimpo包下有该文件。不幸的是,我对R没有任何经验。我检查了互联网,但找不到。这个程序包有python端口吗?如果不存在,是否可以通过python使用该包? python参考方案 最近,我遇到了pingouin库。