我正在尝试查找具有相同项目的行中元素的索引。
到目前为止,这是我的代码:
from __future__ import print_function
import numpy as np
b = np.array([[0, 0, 0],
[2, 2, 2],
[2, 2, 2],
[2, 0, 2],
[2, 0, 2]])
for rows in b:
if len(set(rows)) <= 1:
indices = list(zip(*np.where(rows == 2)))
print(indices)
现在,它只获得x值。我知道numpy中有一个函数,但由于我正在寻找特定的东西,所以不能在这里应用。
编辑:
似乎我的问题被标记为不清楚,所以我决定发布我的尝试来实现这一点。
import numpy as np
b = np.array([[0, 0, 0],
[2, 2, 2],
[2, 2, 2],
[2, 0, 2],
[2, 0, 2]])
for rows in b:
if len(set(rows)) <= 1:
indices = list(zip(*np.where(rows == 2)))
rows_to_list = rows.tolist()
b_to_list = b.tolist()
if indices != []:
print(b_to_list.index(rows_to_list))
print(indices)
如您所见,在获得所需的行后,我试图找到这些行的位置。出于某种原因,我只得到1作为索引,即使b [1]和b [2]用2填充。
答案 0 :(得分:0)
import pandas as pd
b = pd.DataFrame(b)
print b[b.duplicated()]