在python中:如何在第三列中提取最大值,并在第四列中返回值?

在python中:如何在第三列中提取最大值,并在第四列中返回值?,python,nlp,Python,Nlp,我有如下数据: 0 1 251 TrCP 0 2 68 TrCP 0 3 61 TrCP 0 4 69 TrCP 0 5 70 TrCP 0 6 75 TrCP 0 7 63 TrCP 0 8 57 TrCP 0 9 96 TrCP 0 10 266 TrCP ........ 0 2827 62 TrNAP 1 1 67 TrCP 1 2 84 TrCP 1 3 159 Tr

我有如下数据:

    0 1 251 TrCP
    0 2 68 TrCP
    0 3 61 TrCP
    0 4 69 TrCP
    0 5 70 TrCP
    0 6 75 TrCP
    0 7 63 TrCP
    0 8 57 TrCP
    0 9 96 TrCP
    0 10 266 TrCP
    ........
    0 2827 62 TrNAP
    1 1 67 TrCP
    1 2 84 TrCP
    1 3 159 TrCP
    1 4 121 TrCP
    1 5 80 TrCP
    1 6 68 TrCP
    1 7 148 TrCP
    1 8 78 TrCP
    1 9 71 TrCP
    1 10 67 TrCP
    ........
    1 2827 76 TrNAP
    .
    .
    .
    2828 1 62 TrCP
在第一列中,我有一个从0到2828的数字。 对于0-2828中的每个数字 我想根据第三列中的值提取最后一列(例如TrCP)。
例如,在第一列='0'中,第三列的最大值为'266',我想返回输出:TrCP。

我不知道数据是如何存储的,但最普遍的解决方案如下:

my_array= [251, 68, 61, 69, 70, 75...]
whoa_a_wild_array = ['TrCP','TrCP','TrCP','TrCP',...]
whoa_a_wild_array[np.argmax(x)]
此处
np.argmax()
返回最大值的索引。然后,我们可以在另一个数组/vector/list/等中访问该索引。Tadaa

如果您使用的是熊猫,则代码非常类似:

df['4th_column'].values[df['3rd_column'].argmax()]]

.values
确保您实际提取了所需的索引,而不是顺序错误的标签(即如果您的数据帧的索引已编号,并且您不希望访问该索引)。

请显示您已尝试的内容。上述数据是如何存储的,存储在哪里的?这是上一步的输出实际上,我尝试以这种方式存储它:['0 1 251 TrCP','0 2 68 TrCP',…]但是我不知道下一步如何处理,所以我实际上不知道如何保存它以备后续步骤谢谢帮助,只是我有不同值的第一列,所以当第一列的值为“0”时,我需要找到最大值,当第一列的值为“1”时,我需要再次找到最大值,对所有不同的数字也要这样做第一栏的读者不知道我是否正确地解释了自己,对不起,你在使用熊猫吗?如果你是,事情会变得更容易:P