Finding max value with tidyverse












0















I'm new to tidyverse and trying to learn it.



I want to find the max value of a column in a matrix. How I would do it with base R:



state.name[which.max(state.x77[,"Illiteracy"])]


Here is what I've tried using tidyverse so far:



state.x77 %>% state.name %>% which.max(.,"Illiteracy")


state.x77 %>% select(.,max(state.name))


state.x77 %>%
group_by(state.name) %>%
summarize(max(.,))


I'm really unsure how to fit the Illiteracy part into, as well.



Thanks for help.










share|improve this question























  • Please add a reproducible example along with expected output.

    – Ronak Shah
    Nov 20 '18 at 2:21











  • state.name[which.max(state.x77[,"Illiteracy"])] should produce "Louisiana". This is from state.x77, which comes with R.

    – Bkk
    Nov 20 '18 at 2:24


















0















I'm new to tidyverse and trying to learn it.



I want to find the max value of a column in a matrix. How I would do it with base R:



state.name[which.max(state.x77[,"Illiteracy"])]


Here is what I've tried using tidyverse so far:



state.x77 %>% state.name %>% which.max(.,"Illiteracy")


state.x77 %>% select(.,max(state.name))


state.x77 %>%
group_by(state.name) %>%
summarize(max(.,))


I'm really unsure how to fit the Illiteracy part into, as well.



Thanks for help.










share|improve this question























  • Please add a reproducible example along with expected output.

    – Ronak Shah
    Nov 20 '18 at 2:21











  • state.name[which.max(state.x77[,"Illiteracy"])] should produce "Louisiana". This is from state.x77, which comes with R.

    – Bkk
    Nov 20 '18 at 2:24
















0












0








0








I'm new to tidyverse and trying to learn it.



I want to find the max value of a column in a matrix. How I would do it with base R:



state.name[which.max(state.x77[,"Illiteracy"])]


Here is what I've tried using tidyverse so far:



state.x77 %>% state.name %>% which.max(.,"Illiteracy")


state.x77 %>% select(.,max(state.name))


state.x77 %>%
group_by(state.name) %>%
summarize(max(.,))


I'm really unsure how to fit the Illiteracy part into, as well.



Thanks for help.










share|improve this question














I'm new to tidyverse and trying to learn it.



I want to find the max value of a column in a matrix. How I would do it with base R:



state.name[which.max(state.x77[,"Illiteracy"])]


Here is what I've tried using tidyverse so far:



state.x77 %>% state.name %>% which.max(.,"Illiteracy")


state.x77 %>% select(.,max(state.name))


state.x77 %>%
group_by(state.name) %>%
summarize(max(.,))


I'm really unsure how to fit the Illiteracy part into, as well.



Thanks for help.







r max tidyverse






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked Nov 20 '18 at 2:16









BkkBkk

374




374













  • Please add a reproducible example along with expected output.

    – Ronak Shah
    Nov 20 '18 at 2:21











  • state.name[which.max(state.x77[,"Illiteracy"])] should produce "Louisiana". This is from state.x77, which comes with R.

    – Bkk
    Nov 20 '18 at 2:24





















  • Please add a reproducible example along with expected output.

    – Ronak Shah
    Nov 20 '18 at 2:21











  • state.name[which.max(state.x77[,"Illiteracy"])] should produce "Louisiana". This is from state.x77, which comes with R.

    – Bkk
    Nov 20 '18 at 2:24



















Please add a reproducible example along with expected output.

– Ronak Shah
Nov 20 '18 at 2:21





Please add a reproducible example along with expected output.

– Ronak Shah
Nov 20 '18 at 2:21













state.name[which.max(state.x77[,"Illiteracy"])] should produce "Louisiana". This is from state.x77, which comes with R.

– Bkk
Nov 20 '18 at 2:24







state.name[which.max(state.x77[,"Illiteracy"])] should produce "Louisiana". This is from state.x77, which comes with R.

– Bkk
Nov 20 '18 at 2:24














1 Answer
1






active

oldest

votes


















0














Your first issue is that state.x77 is a matrix. The tidyverse works on data frames. So you need to convert.



The tidyverse dislikes variables as row names - better to have their own column. There's a function for that: tibble::rownames_to_column.



filter selects rows according to the criteria you specify, so one way to get maximum Illiteracy is:



library(tibble)
library(dplyr)

state.x77 %>%
as.data.frame() %>%
rownames_to_column(var = "Name") %>%
filter(Illiteracy == max(Illiteracy))

Name Population Income Illiteracy Life Exp Murder HS Grad Frost Area
1 Louisiana 3806 3545 2.8 68.76 13.2 42.2 12 44930


You can add %>% select(Name) or %>% pull(Name) to the end if all you want is the state name.






share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    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: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    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%2fstackoverflow.com%2fquestions%2f53385276%2ffinding-max-value-with-tidyverse%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    Your first issue is that state.x77 is a matrix. The tidyverse works on data frames. So you need to convert.



    The tidyverse dislikes variables as row names - better to have their own column. There's a function for that: tibble::rownames_to_column.



    filter selects rows according to the criteria you specify, so one way to get maximum Illiteracy is:



    library(tibble)
    library(dplyr)

    state.x77 %>%
    as.data.frame() %>%
    rownames_to_column(var = "Name") %>%
    filter(Illiteracy == max(Illiteracy))

    Name Population Income Illiteracy Life Exp Murder HS Grad Frost Area
    1 Louisiana 3806 3545 2.8 68.76 13.2 42.2 12 44930


    You can add %>% select(Name) or %>% pull(Name) to the end if all you want is the state name.






    share|improve this answer




























      0














      Your first issue is that state.x77 is a matrix. The tidyverse works on data frames. So you need to convert.



      The tidyverse dislikes variables as row names - better to have their own column. There's a function for that: tibble::rownames_to_column.



      filter selects rows according to the criteria you specify, so one way to get maximum Illiteracy is:



      library(tibble)
      library(dplyr)

      state.x77 %>%
      as.data.frame() %>%
      rownames_to_column(var = "Name") %>%
      filter(Illiteracy == max(Illiteracy))

      Name Population Income Illiteracy Life Exp Murder HS Grad Frost Area
      1 Louisiana 3806 3545 2.8 68.76 13.2 42.2 12 44930


      You can add %>% select(Name) or %>% pull(Name) to the end if all you want is the state name.






      share|improve this answer


























        0












        0








        0







        Your first issue is that state.x77 is a matrix. The tidyverse works on data frames. So you need to convert.



        The tidyverse dislikes variables as row names - better to have their own column. There's a function for that: tibble::rownames_to_column.



        filter selects rows according to the criteria you specify, so one way to get maximum Illiteracy is:



        library(tibble)
        library(dplyr)

        state.x77 %>%
        as.data.frame() %>%
        rownames_to_column(var = "Name") %>%
        filter(Illiteracy == max(Illiteracy))

        Name Population Income Illiteracy Life Exp Murder HS Grad Frost Area
        1 Louisiana 3806 3545 2.8 68.76 13.2 42.2 12 44930


        You can add %>% select(Name) or %>% pull(Name) to the end if all you want is the state name.






        share|improve this answer













        Your first issue is that state.x77 is a matrix. The tidyverse works on data frames. So you need to convert.



        The tidyverse dislikes variables as row names - better to have their own column. There's a function for that: tibble::rownames_to_column.



        filter selects rows according to the criteria you specify, so one way to get maximum Illiteracy is:



        library(tibble)
        library(dplyr)

        state.x77 %>%
        as.data.frame() %>%
        rownames_to_column(var = "Name") %>%
        filter(Illiteracy == max(Illiteracy))

        Name Population Income Illiteracy Life Exp Murder HS Grad Frost Area
        1 Louisiana 3806 3545 2.8 68.76 13.2 42.2 12 44930


        You can add %>% select(Name) or %>% pull(Name) to the end if all you want is the state name.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 20 '18 at 2:27









        neilfwsneilfws

        17.6k53648




        17.6k53648






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • 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%2fstackoverflow.com%2fquestions%2f53385276%2ffinding-max-value-with-tidyverse%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

            Can a sorcerer learn a 5th-level spell early by creating spell slots using the Font of Magic feature?

            Does disintegrating a polymorphed enemy still kill it after the 2018 errata?

            A Topological Invariant for $pi_3(U(n))$