Uniq Descending Sort in a column Announcing the arrival of Valued Associate #679: Cesar...

Why wasn't DOSKEY integrated with COMMAND.COM?

Do I really need to have a message in a novel to appeal to readers?

Crossing US/Canada Border for less than 24 hours

Why are there no cargo aircraft with "flying wing" design?

Is grep documentation wrong?

If my PI received research grants from a company to be able to pay my postdoc salary, did I have a potential conflict interest too?

Can melee weapons be used to deliver Contact Poisons?

Trademark violation for app?

Should I use a zero-interest credit card for a large one-time purchase?

How can I use the Python library networkx from Mathematica?

Does classifying an integer as a discrete log require it be part of a multiplicative group?

Is it fair for a professor to grade us on the possession of past papers?

Can a new player join a group only when a new campaign starts?

Do jazz musicians improvise on the parent scale in addition to the chord-scales?

What is the escape velocity of a neutron particle (not neutron star)

What would be the ideal power source for a cybernetic eye?

How to down pick a chord with skipped strings?

How to answer "Have you ever been terminated?"

How do pianists reach extremely loud dynamics?

Generate an RGB colour grid

Why are both D and D# fitting into my E minor key?

How to show element name in portuguese using elements package?

How do I stop a creek from eroding my steep embankment?

What do you call the main part of a joke?



Uniq Descending Sort in a column



Announcing the arrival of Valued Associate #679: Cesar Manara
Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern)
2019 Community Moderator Election Results
Why I closed the “Why is Kali so hard” questionWhere has my `uniq` or `sort -u` line gone, with some unicode charactersWhat is the difference between “sort -u” and “sort | uniq”?sort only the first column and uniqsort and uniq in awkSort -u without sorting but with better uniqueness?sort and uniq columns individually in a text fileWhy does this command not sort based on the uniq count?Why does uniq utility give me unexpected results?Sort one column ascending and another column descendingHow to sort the values in one column based on other column values?





.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ margin-bottom:0;
}







0















In the given data is it possible to uniq sort and print only the top hits against each region?



Given Data



aza1 18
bcn1 16
sat2 12
lcy2 12
fra1 12
aza1 12
bcn1 10
sat2 8
lcy2 9
fra1 13
aza1 21
bcn1 2
sat2 10
lcy2 0
fra1 1


Required Output



aza1 21
bcn1 16
sat2 12
lcy2 12
fra1 13









share|improve this question




















  • 1





    Is the order important? it's easier to do if the first column can be in lexical order

    – steeldriver
    7 hours ago


















0















In the given data is it possible to uniq sort and print only the top hits against each region?



Given Data



aza1 18
bcn1 16
sat2 12
lcy2 12
fra1 12
aza1 12
bcn1 10
sat2 8
lcy2 9
fra1 13
aza1 21
bcn1 2
sat2 10
lcy2 0
fra1 1


Required Output



aza1 21
bcn1 16
sat2 12
lcy2 12
fra1 13









share|improve this question




















  • 1





    Is the order important? it's easier to do if the first column can be in lexical order

    – steeldriver
    7 hours ago














0












0








0








In the given data is it possible to uniq sort and print only the top hits against each region?



Given Data



aza1 18
bcn1 16
sat2 12
lcy2 12
fra1 12
aza1 12
bcn1 10
sat2 8
lcy2 9
fra1 13
aza1 21
bcn1 2
sat2 10
lcy2 0
fra1 1


Required Output



aza1 21
bcn1 16
sat2 12
lcy2 12
fra1 13









share|improve this question
















In the given data is it possible to uniq sort and print only the top hits against each region?



Given Data



aza1 18
bcn1 16
sat2 12
lcy2 12
fra1 12
aza1 12
bcn1 10
sat2 8
lcy2 9
fra1 13
aza1 21
bcn1 2
sat2 10
lcy2 0
fra1 1


Required Output



aza1 21
bcn1 16
sat2 12
lcy2 12
fra1 13






sort uniq






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited 7 hours ago









Inian

5,4651531




5,4651531










asked 7 hours ago









Maran GaneshMaran Ganesh

244




244








  • 1





    Is the order important? it's easier to do if the first column can be in lexical order

    – steeldriver
    7 hours ago














  • 1





    Is the order important? it's easier to do if the first column can be in lexical order

    – steeldriver
    7 hours ago








1




1





Is the order important? it's easier to do if the first column can be in lexical order

– steeldriver
7 hours ago





Is the order important? it's easier to do if the first column can be in lexical order

– steeldriver
7 hours ago










2 Answers
2






active

oldest

votes


















0














If the order doesn't matter:



<infile sort -rnk2,2  |sort -uk1,1


-revers -numerical sort on -key column number 2 (sort -rnk2,2), then keep and -unique lines on first -key column (sort -uk1,1);



or same with awk:



<infile awk '
{ arr[$1]= (arr[$1]<$2)? $2 : arr[$1] }
END{ for (x in arr) print x, arr[x] }'





share|improve this answer































    0














    Solution if order matters, using only sort and uniq



    cat <INPUT_FILE> | sort -k 1,1 -k 2nr,2 | uniq -w4


    OUTPUT:



    aza1 21
    bcn1 16
    fra1 13
    lcy2 12
    sat2 12


    Sort parameters:



    -k: sort by key (in this case column, pairs with -t)



    -n: sort as a number



    -r: reverse order



    (optional) -t: in case you want to change the key separator (default: space)



    Uniq parameter:



    -w: choose the first N characters



    Explanation:



    In your problem, we need to first sort the first column and then the second one. So there is a -k 1,1 followed by -k 2,2.
    But, the second key (ONLY) must be sorted as a number and in the reverse order.
    Thus, it should be -k 2nr,2.



    Note that if the -n or -r sort parameters are outside -k parameter, they are applied to the whole input instead of specific keys.



    Lastly, me must find the unique lines, but matching only the first 4 chars. Thus, uniq -w 4






    share|improve this answer










    New contributor




    brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
    Check out our Code of Conduct.





















      Your Answer








      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "106"
      };
      initTagRenderer("".split(" "), "".split(" "), channelOptions);

      StackExchange.using("externalEditor", function() {
      // Have to fire editor after snippets, if snippets enabled
      if (StackExchange.settings.snippets.snippetsEnabled) {
      StackExchange.using("snippets", function() {
      createEditor();
      });
      }
      else {
      createEditor();
      }
      });

      function createEditor() {
      StackExchange.prepareEditor({
      heartbeatType: 'answer',
      autoActivateHeartbeat: false,
      convertImagesToLinks: false,
      noModals: true,
      showLowRepImageUploadWarning: true,
      reputationToPostImages: null,
      bindNavPrevention: true,
      postfix: "",
      imageUploader: {
      brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
      contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
      allowUrls: true
      },
      onDemand: true,
      discardSelector: ".discard-answer"
      ,immediatelyShowMarkdownHelp:true
      });


      }
      });














      draft saved

      draft discarded


















      StackExchange.ready(
      function () {
      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f513057%2funiq-descending-sort-in-a-column%23new-answer', 'question_page');
      }
      );

      Post as a guest















      Required, but never shown

























      2 Answers
      2






      active

      oldest

      votes








      2 Answers
      2






      active

      oldest

      votes









      active

      oldest

      votes






      active

      oldest

      votes









      0














      If the order doesn't matter:



      <infile sort -rnk2,2  |sort -uk1,1


      -revers -numerical sort on -key column number 2 (sort -rnk2,2), then keep and -unique lines on first -key column (sort -uk1,1);



      or same with awk:



      <infile awk '
      { arr[$1]= (arr[$1]<$2)? $2 : arr[$1] }
      END{ for (x in arr) print x, arr[x] }'





      share|improve this answer




























        0














        If the order doesn't matter:



        <infile sort -rnk2,2  |sort -uk1,1


        -revers -numerical sort on -key column number 2 (sort -rnk2,2), then keep and -unique lines on first -key column (sort -uk1,1);



        or same with awk:



        <infile awk '
        { arr[$1]= (arr[$1]<$2)? $2 : arr[$1] }
        END{ for (x in arr) print x, arr[x] }'





        share|improve this answer


























          0












          0








          0







          If the order doesn't matter:



          <infile sort -rnk2,2  |sort -uk1,1


          -revers -numerical sort on -key column number 2 (sort -rnk2,2), then keep and -unique lines on first -key column (sort -uk1,1);



          or same with awk:



          <infile awk '
          { arr[$1]= (arr[$1]<$2)? $2 : arr[$1] }
          END{ for (x in arr) print x, arr[x] }'





          share|improve this answer













          If the order doesn't matter:



          <infile sort -rnk2,2  |sort -uk1,1


          -revers -numerical sort on -key column number 2 (sort -rnk2,2), then keep and -unique lines on first -key column (sort -uk1,1);



          or same with awk:



          <infile awk '
          { arr[$1]= (arr[$1]<$2)? $2 : arr[$1] }
          END{ for (x in arr) print x, arr[x] }'






          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered 6 hours ago









          αғsнιηαғsнιη

          17.4k103070




          17.4k103070

























              0














              Solution if order matters, using only sort and uniq



              cat <INPUT_FILE> | sort -k 1,1 -k 2nr,2 | uniq -w4


              OUTPUT:



              aza1 21
              bcn1 16
              fra1 13
              lcy2 12
              sat2 12


              Sort parameters:



              -k: sort by key (in this case column, pairs with -t)



              -n: sort as a number



              -r: reverse order



              (optional) -t: in case you want to change the key separator (default: space)



              Uniq parameter:



              -w: choose the first N characters



              Explanation:



              In your problem, we need to first sort the first column and then the second one. So there is a -k 1,1 followed by -k 2,2.
              But, the second key (ONLY) must be sorted as a number and in the reverse order.
              Thus, it should be -k 2nr,2.



              Note that if the -n or -r sort parameters are outside -k parameter, they are applied to the whole input instead of specific keys.



              Lastly, me must find the unique lines, but matching only the first 4 chars. Thus, uniq -w 4






              share|improve this answer










              New contributor




              brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
              Check out our Code of Conduct.

























                0














                Solution if order matters, using only sort and uniq



                cat <INPUT_FILE> | sort -k 1,1 -k 2nr,2 | uniq -w4


                OUTPUT:



                aza1 21
                bcn1 16
                fra1 13
                lcy2 12
                sat2 12


                Sort parameters:



                -k: sort by key (in this case column, pairs with -t)



                -n: sort as a number



                -r: reverse order



                (optional) -t: in case you want to change the key separator (default: space)



                Uniq parameter:



                -w: choose the first N characters



                Explanation:



                In your problem, we need to first sort the first column and then the second one. So there is a -k 1,1 followed by -k 2,2.
                But, the second key (ONLY) must be sorted as a number and in the reverse order.
                Thus, it should be -k 2nr,2.



                Note that if the -n or -r sort parameters are outside -k parameter, they are applied to the whole input instead of specific keys.



                Lastly, me must find the unique lines, but matching only the first 4 chars. Thus, uniq -w 4






                share|improve this answer










                New contributor




                brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                Check out our Code of Conduct.























                  0












                  0








                  0







                  Solution if order matters, using only sort and uniq



                  cat <INPUT_FILE> | sort -k 1,1 -k 2nr,2 | uniq -w4


                  OUTPUT:



                  aza1 21
                  bcn1 16
                  fra1 13
                  lcy2 12
                  sat2 12


                  Sort parameters:



                  -k: sort by key (in this case column, pairs with -t)



                  -n: sort as a number



                  -r: reverse order



                  (optional) -t: in case you want to change the key separator (default: space)



                  Uniq parameter:



                  -w: choose the first N characters



                  Explanation:



                  In your problem, we need to first sort the first column and then the second one. So there is a -k 1,1 followed by -k 2,2.
                  But, the second key (ONLY) must be sorted as a number and in the reverse order.
                  Thus, it should be -k 2nr,2.



                  Note that if the -n or -r sort parameters are outside -k parameter, they are applied to the whole input instead of specific keys.



                  Lastly, me must find the unique lines, but matching only the first 4 chars. Thus, uniq -w 4






                  share|improve this answer










                  New contributor




                  brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                  Check out our Code of Conduct.










                  Solution if order matters, using only sort and uniq



                  cat <INPUT_FILE> | sort -k 1,1 -k 2nr,2 | uniq -w4


                  OUTPUT:



                  aza1 21
                  bcn1 16
                  fra1 13
                  lcy2 12
                  sat2 12


                  Sort parameters:



                  -k: sort by key (in this case column, pairs with -t)



                  -n: sort as a number



                  -r: reverse order



                  (optional) -t: in case you want to change the key separator (default: space)



                  Uniq parameter:



                  -w: choose the first N characters



                  Explanation:



                  In your problem, we need to first sort the first column and then the second one. So there is a -k 1,1 followed by -k 2,2.
                  But, the second key (ONLY) must be sorted as a number and in the reverse order.
                  Thus, it should be -k 2nr,2.



                  Note that if the -n or -r sort parameters are outside -k parameter, they are applied to the whole input instead of specific keys.



                  Lastly, me must find the unique lines, but matching only the first 4 chars. Thus, uniq -w 4







                  share|improve this answer










                  New contributor




                  brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                  Check out our Code of Conduct.









                  share|improve this answer



                  share|improve this answer








                  edited 6 hours ago





















                  New contributor




                  brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                  Check out our Code of Conduct.









                  answered 6 hours ago









                  brunosktxbrunosktx

                  11




                  11




                  New contributor




                  brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                  Check out our Code of Conduct.





                  New contributor





                  brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                  Check out our Code of Conduct.






                  brunosktx is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
                  Check out our Code of Conduct.






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to Unix & Linux Stack Exchange!


                      • Please be sure to answer the question. Provide details and share your research!

                      But avoid



                      • Asking for help, clarification, or responding to other answers.

                      • Making statements based on opinion; back them up with references or personal experience.


                      To learn more, see our tips on writing great answers.




                      draft saved


                      draft discarded














                      StackExchange.ready(
                      function () {
                      StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f513057%2funiq-descending-sort-in-a-column%23new-answer', 'question_page');
                      }
                      );

                      Post as a guest















                      Required, but never shown





















































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown

































                      Required, but never shown














                      Required, but never shown












                      Required, but never shown







                      Required, but never shown







                      Popular posts from this blog

                      Taj Mahal Inhaltsverzeichnis Aufbau | Geschichte | 350-Jahr-Feier | Heutige Bedeutung | Siehe auch |...

                      Baia Sprie Cuprins Etimologie | Istorie | Demografie | Politică și administrație | Arii naturale...

                      Nicolae Petrescu-Găină Cuprins Biografie | Opera | In memoriam | Varia | Controverse, incertitudini...