寻找最能满足数据库条件的数据

我有一个“ input_data”数组,在其中将属于“ data”数据库的任何代码放入“ input_data [i] [3]”。

Database: Database

import pandas as pd 
input_data = [[1, 'Col', 'D', '21X62'],
              [2, 'Col', 'D', '12X62'],
              [3, 'Col', 'D', '21X68'],
              [4, 'Col', 'D', '21X62'],
              [5, 'Row', 'D', '12X45'],
              [6, 'Row', 'D', '12X45']]

ExcelPrincipal = pd.ExcelFile('example2.xlsx')
base = []
for i in range(len(input_data)): 
    if input_data[i][2] == 'D':
        data = ExcelPrincipal.parse('D') 

    for j in range(len(data)):
        if input_data[i][3] == data.values[j][0]:
            base.append([data.values[j][1], data.values[j][2]])     
print('Element',5*' ','Ratio')
R_list = []
for i in range(len(input_data)):
    if input_data[i][1] == 'Col':
        R = round(base[i][1]/base[i][0],3) 
        R_list.append(R)
        print(f"{i+1:02} {R:>16}")
print('')
print('\n'.join(',   '.join(map(str,sl)) for sl in input_data))

#while R_list[i] < 0.5:
#    for j in range(len(R_list)):
#        if input_data[i][1] == 'Col':
#            R = round(base[i][1]/base[i][0],3) 
#            R_list.append(R)   

我要在这段代码中尝试做的是返回一个更新的“ input_data”数组,其中“ input_data [i] [3]”行中的数据的比率大于0.5。

举例说明,我当前的“ input_data”矩阵具有以下内容:

[[1, 'Col', 'D', '21X62'],
 [2, 'Col', 'D', '12X62'],
 [3, 'Col', 'D', '21X68'],
 [4, 'Col', 'D', '21X62'],
 [5, 'Row', 'D', '12X45'],
 [6, 'Row', 'D', '12X45']]

Which result in the following relationships:

Element         Ratio
01              0.209
02              0.211
03              0.209
04              0.381

我正在寻找的是找到数据库的第一个代码,以便它使我在每个元素中的关系都大于0.5(大于0.5且最接近0.5),例如:

[[1, 'Col', 'D', '12X336'],
 [2, 'Col', 'D', '12X336'],
 [3, 'Col', 'D', '12X336'],
 [4, 'Col', 'D', '12X336'],
 [5, 'Row', 'D', '12X336'],
 [6, 'Row', 'D', '12X336']]

Element         Ratio
01              0.543
02              0.543
03              0.543
04              0.543

我认为可以通过while循环来完成,直到找到为止,但是可能会有一些更方便的方法,最好的问候。