How to apply `Length` in all elements












2












$begingroup$


I want to apply Length in each element from a list.
For example:



My list is: {1,{2,3},{4,5,6}}



How to apply Length in each element of this list?



Length[{1}]
Length[{2,3}]
Length[{4,5,6}]


I have tried to use Thread, but doesn't works:



In[235]:= Thread[Length[{1, {2, 3}, {4, 5, 6}}]]

Out[235]= 3


The result that I want is some like:



1
2
3


Which is the number of elements in each element.










share|improve this question









$endgroup$








  • 2




    $begingroup$
    What in your opinion is the Length of 1? You can use Map: Map[Length, {1, {2, 3}, {4, 5, 6}}].
    $endgroup$
    – Carl Lange
    2 days ago
















2












$begingroup$


I want to apply Length in each element from a list.
For example:



My list is: {1,{2,3},{4,5,6}}



How to apply Length in each element of this list?



Length[{1}]
Length[{2,3}]
Length[{4,5,6}]


I have tried to use Thread, but doesn't works:



In[235]:= Thread[Length[{1, {2, 3}, {4, 5, 6}}]]

Out[235]= 3


The result that I want is some like:



1
2
3


Which is the number of elements in each element.










share|improve this question









$endgroup$








  • 2




    $begingroup$
    What in your opinion is the Length of 1? You can use Map: Map[Length, {1, {2, 3}, {4, 5, 6}}].
    $endgroup$
    – Carl Lange
    2 days ago














2












2








2


1



$begingroup$


I want to apply Length in each element from a list.
For example:



My list is: {1,{2,3},{4,5,6}}



How to apply Length in each element of this list?



Length[{1}]
Length[{2,3}]
Length[{4,5,6}]


I have tried to use Thread, but doesn't works:



In[235]:= Thread[Length[{1, {2, 3}, {4, 5, 6}}]]

Out[235]= 3


The result that I want is some like:



1
2
3


Which is the number of elements in each element.










share|improve this question









$endgroup$




I want to apply Length in each element from a list.
For example:



My list is: {1,{2,3},{4,5,6}}



How to apply Length in each element of this list?



Length[{1}]
Length[{2,3}]
Length[{4,5,6}]


I have tried to use Thread, but doesn't works:



In[235]:= Thread[Length[{1, {2, 3}, {4, 5, 6}}]]

Out[235]= 3


The result that I want is some like:



1
2
3


Which is the number of elements in each element.







functions function-construction






share|improve this question













share|improve this question











share|improve this question




share|improve this question










asked 2 days ago









MateusMateus

48616




48616








  • 2




    $begingroup$
    What in your opinion is the Length of 1? You can use Map: Map[Length, {1, {2, 3}, {4, 5, 6}}].
    $endgroup$
    – Carl Lange
    2 days ago














  • 2




    $begingroup$
    What in your opinion is the Length of 1? You can use Map: Map[Length, {1, {2, 3}, {4, 5, 6}}].
    $endgroup$
    – Carl Lange
    2 days ago








2




2




$begingroup$
What in your opinion is the Length of 1? You can use Map: Map[Length, {1, {2, 3}, {4, 5, 6}}].
$endgroup$
– Carl Lange
2 days ago




$begingroup$
What in your opinion is the Length of 1? You can use Map: Map[Length, {1, {2, 3}, {4, 5, 6}}].
$endgroup$
– Carl Lange
2 days ago










3 Answers
3






active

oldest

votes


















7












$begingroup$

If[AtomQ @ #, 1, Length @ #] & /@ {1, {2, 3}, {4, 5, 6}}



{1, 2, 3}




If the input list does not contain {} (thanks: @corey979), you can also use:



Length /@ {1, {2, 3}, {4, 5, 6}} /. 0 -> 1
(* or Map[Length]@{1, {2, 3}, {4, 5, 6}} /. 0 -> 1 *)



{1, 2, 3}







share|improve this answer











$endgroup$













  • $begingroup$
    Note that the first approach fails on {1, {2, 3}, {}, {4, 5, 6}}. The second, however, works well.
    $endgroup$
    – corey979
    2 days ago










  • $begingroup$
    @corey979, very good point.
    $endgroup$
    – kglr
    2 days ago



















5












$begingroup$

Introduce Charting`padList to make a list for your element..



Length@*Charting`padList /@ {1, {2, 3}, {4, 5, 6}}



{1, 2, 3}







share|improve this answer











$endgroup$









  • 1




    $begingroup$
    Brilliant. Care to elaborate more on Charting`padList?
    $endgroup$
    – corey979
    2 days ago



















0












$begingroup$

A mildly adjusted version of the nice Charting answer by yode is to apply a list to each element and flatten:



Length@Flatten@List@#&/@{1, {2, 3}, {4, 5, 6}}





share|improve this answer








New contributor




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






$endgroup$













    Your Answer





    StackExchange.ifUsing("editor", function () {
    return StackExchange.using("mathjaxEditing", function () {
    StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix) {
    StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
    });
    });
    }, "mathjax-editing");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "387"
    };
    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%2fmathematica.stackexchange.com%2fquestions%2f190015%2fhow-to-apply-length-in-all-elements%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    3 Answers
    3






    active

    oldest

    votes








    3 Answers
    3






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    7












    $begingroup$

    If[AtomQ @ #, 1, Length @ #] & /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}




    If the input list does not contain {} (thanks: @corey979), you can also use:



    Length /@ {1, {2, 3}, {4, 5, 6}} /. 0 -> 1
    (* or Map[Length]@{1, {2, 3}, {4, 5, 6}} /. 0 -> 1 *)



    {1, 2, 3}







    share|improve this answer











    $endgroup$













    • $begingroup$
      Note that the first approach fails on {1, {2, 3}, {}, {4, 5, 6}}. The second, however, works well.
      $endgroup$
      – corey979
      2 days ago










    • $begingroup$
      @corey979, very good point.
      $endgroup$
      – kglr
      2 days ago
















    7












    $begingroup$

    If[AtomQ @ #, 1, Length @ #] & /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}




    If the input list does not contain {} (thanks: @corey979), you can also use:



    Length /@ {1, {2, 3}, {4, 5, 6}} /. 0 -> 1
    (* or Map[Length]@{1, {2, 3}, {4, 5, 6}} /. 0 -> 1 *)



    {1, 2, 3}







    share|improve this answer











    $endgroup$













    • $begingroup$
      Note that the first approach fails on {1, {2, 3}, {}, {4, 5, 6}}. The second, however, works well.
      $endgroup$
      – corey979
      2 days ago










    • $begingroup$
      @corey979, very good point.
      $endgroup$
      – kglr
      2 days ago














    7












    7








    7





    $begingroup$

    If[AtomQ @ #, 1, Length @ #] & /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}




    If the input list does not contain {} (thanks: @corey979), you can also use:



    Length /@ {1, {2, 3}, {4, 5, 6}} /. 0 -> 1
    (* or Map[Length]@{1, {2, 3}, {4, 5, 6}} /. 0 -> 1 *)



    {1, 2, 3}







    share|improve this answer











    $endgroup$



    If[AtomQ @ #, 1, Length @ #] & /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}




    If the input list does not contain {} (thanks: @corey979), you can also use:



    Length /@ {1, {2, 3}, {4, 5, 6}} /. 0 -> 1
    (* or Map[Length]@{1, {2, 3}, {4, 5, 6}} /. 0 -> 1 *)



    {1, 2, 3}








    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited 2 days ago

























    answered 2 days ago









    kglrkglr

    180k9200413




    180k9200413












    • $begingroup$
      Note that the first approach fails on {1, {2, 3}, {}, {4, 5, 6}}. The second, however, works well.
      $endgroup$
      – corey979
      2 days ago










    • $begingroup$
      @corey979, very good point.
      $endgroup$
      – kglr
      2 days ago


















    • $begingroup$
      Note that the first approach fails on {1, {2, 3}, {}, {4, 5, 6}}. The second, however, works well.
      $endgroup$
      – corey979
      2 days ago










    • $begingroup$
      @corey979, very good point.
      $endgroup$
      – kglr
      2 days ago
















    $begingroup$
    Note that the first approach fails on {1, {2, 3}, {}, {4, 5, 6}}. The second, however, works well.
    $endgroup$
    – corey979
    2 days ago




    $begingroup$
    Note that the first approach fails on {1, {2, 3}, {}, {4, 5, 6}}. The second, however, works well.
    $endgroup$
    – corey979
    2 days ago












    $begingroup$
    @corey979, very good point.
    $endgroup$
    – kglr
    2 days ago




    $begingroup$
    @corey979, very good point.
    $endgroup$
    – kglr
    2 days ago











    5












    $begingroup$

    Introduce Charting`padList to make a list for your element..



    Length@*Charting`padList /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}







    share|improve this answer











    $endgroup$









    • 1




      $begingroup$
      Brilliant. Care to elaborate more on Charting`padList?
      $endgroup$
      – corey979
      2 days ago
















    5












    $begingroup$

    Introduce Charting`padList to make a list for your element..



    Length@*Charting`padList /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}







    share|improve this answer











    $endgroup$









    • 1




      $begingroup$
      Brilliant. Care to elaborate more on Charting`padList?
      $endgroup$
      – corey979
      2 days ago














    5












    5








    5





    $begingroup$

    Introduce Charting`padList to make a list for your element..



    Length@*Charting`padList /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}







    share|improve this answer











    $endgroup$



    Introduce Charting`padList to make a list for your element..



    Length@*Charting`padList /@ {1, {2, 3}, {4, 5, 6}}



    {1, 2, 3}








    share|improve this answer














    share|improve this answer



    share|improve this answer








    edited 2 days ago

























    answered 2 days ago









    yodeyode

    10.2k234100




    10.2k234100








    • 1




      $begingroup$
      Brilliant. Care to elaborate more on Charting`padList?
      $endgroup$
      – corey979
      2 days ago














    • 1




      $begingroup$
      Brilliant. Care to elaborate more on Charting`padList?
      $endgroup$
      – corey979
      2 days ago








    1




    1




    $begingroup$
    Brilliant. Care to elaborate more on Charting`padList?
    $endgroup$
    – corey979
    2 days ago




    $begingroup$
    Brilliant. Care to elaborate more on Charting`padList?
    $endgroup$
    – corey979
    2 days ago











    0












    $begingroup$

    A mildly adjusted version of the nice Charting answer by yode is to apply a list to each element and flatten:



    Length@Flatten@List@#&/@{1, {2, 3}, {4, 5, 6}}





    share|improve this answer








    New contributor




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






    $endgroup$


















      0












      $begingroup$

      A mildly adjusted version of the nice Charting answer by yode is to apply a list to each element and flatten:



      Length@Flatten@List@#&/@{1, {2, 3}, {4, 5, 6}}





      share|improve this answer








      New contributor




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






      $endgroup$
















        0












        0








        0





        $begingroup$

        A mildly adjusted version of the nice Charting answer by yode is to apply a list to each element and flatten:



        Length@Flatten@List@#&/@{1, {2, 3}, {4, 5, 6}}





        share|improve this answer








        New contributor




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






        $endgroup$



        A mildly adjusted version of the nice Charting answer by yode is to apply a list to each element and flatten:



        Length@Flatten@List@#&/@{1, {2, 3}, {4, 5, 6}}






        share|improve this answer








        New contributor




        Jordan Moxon 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






        New contributor




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









        answered yesterday









        Jordan MoxonJordan Moxon

        1




        1




        New contributor




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





        New contributor





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






        Jordan Moxon 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 Mathematica 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.


            Use MathJax to format equations. MathJax reference.


            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%2fmathematica.stackexchange.com%2fquestions%2f190015%2fhow-to-apply-length-in-all-elements%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

            "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

            Alcedinidae

            Origin of the phrase “under your belt”?