给出一个具有m行和n列的数据框,我希望每行的列名最少。我正在使用for循环。接下来,我对获得的列进行测试,如果测试失败,我希望在同一行中设置第二个最小值,依此类推。]
我当前的代码对每一行的数据框进行排序。当然,第一个值是最小值。我执行测试。如果测试失败,则转到第二个值,依此类推。该代码附在下面。 data
和dfObj
是熊猫数据框对象。
for i in data.index: #for each row dfObj = data.sort_values(by = i, axis=1, ascending = True) #sorting by row and saving as new dataframe for column in dfObj: # looping over column in sorted dataframe if some_condition true: perform action else: continue # this takes me to next column
但是,这种方法非常缓慢且效率低下。这是对整个数据帧进行m次排序。如果可能,我希望不进行排序。有更好的方法吗?
给出一个具有m行和n列的数据框,我希望每行的列名最少。我正在使用for循环。接下来,我对获得的列执行测试,如果测试失败,我希望第二个...
为了避免在每一行进行排序,可以使用np.argsort
将其向量化>
np.argsort