我有两个整数' high'和' low'(整数值,我的整个数据集都是数字,包含int和float值列。)和一个名为' data'的数据框。我想找出符合以下条件的行的整数索引:
条件
我是如何检查每一列并找到相交的值,但找不到合适的方式,请帮助。
数据读取中的列数可能会有所不同,因此我的代码应该是动态的。 我的代码:
li = {}
variables = list(data.columns.values)
for x in variables :
li[x] = []
le = len(variables)
for x in range(0,le):
li[(variables[x])].append( data[~(data[(variables[x])]>credentials[(variables[x])]['low']) & (data[(variables[x])]<credentials[(variables[x])]['high']) ].index)
vals = li.values()
uniq = set([vals[0]]) # this line shows error.
for lst in vals[1:]:
uniq.intersection_update(lst)
result_rows = list (uniq)
data.drop(data.index[result_rows])
我试图通过选择 data!= deviating 的索引来实现这个条件 但获得整数索引似乎是个问题。无法在网上找到任何正确的答案。
我的&#39; li&#39; dict看起来像这样
{u'Combed': [Int64Index([148, 159], dtype='int64')],
u'OE': [Int64Index([], dtype='int64')],
u'P': [Int64Index([], dtype='int64')],
u'PCH': [Int64Index([126, 127, 128, 129, 130, 131, 132, 133, 134, 136, 137, 138, 139, 141, 142, 143, 144, 145], dtype='int64')],
u'PV': [Int64Index([32, 34, 35, 36, 37, 81, 85], dtype='int64')],
u'V': [Int64Index([], dtype='int64')]}