Computationally populating tables with probability data












5















I have the following template for a journal article featuring a basic table:





enter image description here





The code looks something like this:



documentclass[jou,apacite]{apa6}
usepackage[utf8]{inputenc}
usepackage{amsmath}

title{Title of the article}
author{Author Name}
affiliation{Affiliation}

abstract{This is the abstract.}

begin{document}

maketitle
section{This is the heading for the first section of the article.}
Lorem ipsum.

Results are presented in Table~ref{tab1}.

begin{table}[!htb]
caption{Sample table.}label{tab1}
begin{tabular}{ccc}
hline\[-1.5ex]
AAA & BBB & CCC \[0.5ex]
hline\[-1.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
hline
end{tabular}
end{table}


section{This is the heading for the second section of the article.}
Lorem ipsum.

end{document}




What I want to know is:
Rather than typing in every value of a table manually, and potentially mistyping a digit or a decimal point here or there; is LaTeX capable of evaluating the math for me?



Consider the odds or probability of a coin toss winning streak, for example:




Each flip has 50:50 (1:1) odds:
50% probability of winning
50% probability of losing



The odds of winning two consecutive flips are 75:25 (3:1):

25% probability of winning
75% probability of losing



The odds of
winning three consecutive flips are 87.5:12.5 (7:1):

12.5% probability of winning

87.5% probability of losing



The odds of winning four consecutive flips are 93.75/6.25 (15:1):

6.25% probability of winning

93.75% probability of losing




..and so on.




Probability of winning n consecutive flips is 2^(-n) * 100.

Probability of not winning n consecutive flips is 100 - (2^(-n))
* 100




Of course I could just calculate each value and type in every cell manually, but I might want to show ten or more flips. Anyway, is this something LaTeX can do?










share|improve this question

























  • Are you free to use LuaLaTeX, or must you use either pdfLaTeX or XeLaTeX?

    – Mico
    Mar 31 at 20:17











  • Hi @Mico, I'm not actually sure. I'm still new to LaTeX. I actually just use overleaf.com for most things.

    – tjt263
    Mar 31 at 20:20






  • 2





    You might consider sagemath, if you want to have very sophisticated symbolic or numerical mathematics; it is free and open source, but requires a significant investment of time to learn.

    – Benjamin McKay
    Mar 31 at 20:28






  • 1





    @Mico Actually I just checked. The compiler I've been using is pdfLaTeX but have the others available too, if necessary.

    – tjt263
    Mar 31 at 20:29
















5















I have the following template for a journal article featuring a basic table:





enter image description here





The code looks something like this:



documentclass[jou,apacite]{apa6}
usepackage[utf8]{inputenc}
usepackage{amsmath}

title{Title of the article}
author{Author Name}
affiliation{Affiliation}

abstract{This is the abstract.}

begin{document}

maketitle
section{This is the heading for the first section of the article.}
Lorem ipsum.

Results are presented in Table~ref{tab1}.

begin{table}[!htb]
caption{Sample table.}label{tab1}
begin{tabular}{ccc}
hline\[-1.5ex]
AAA & BBB & CCC \[0.5ex]
hline\[-1.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
hline
end{tabular}
end{table}


section{This is the heading for the second section of the article.}
Lorem ipsum.

end{document}




What I want to know is:
Rather than typing in every value of a table manually, and potentially mistyping a digit or a decimal point here or there; is LaTeX capable of evaluating the math for me?



Consider the odds or probability of a coin toss winning streak, for example:




Each flip has 50:50 (1:1) odds:
50% probability of winning
50% probability of losing



The odds of winning two consecutive flips are 75:25 (3:1):

25% probability of winning
75% probability of losing



The odds of
winning three consecutive flips are 87.5:12.5 (7:1):

12.5% probability of winning

87.5% probability of losing



The odds of winning four consecutive flips are 93.75/6.25 (15:1):

6.25% probability of winning

93.75% probability of losing




..and so on.




Probability of winning n consecutive flips is 2^(-n) * 100.

Probability of not winning n consecutive flips is 100 - (2^(-n))
* 100




Of course I could just calculate each value and type in every cell manually, but I might want to show ten or more flips. Anyway, is this something LaTeX can do?










share|improve this question

























  • Are you free to use LuaLaTeX, or must you use either pdfLaTeX or XeLaTeX?

    – Mico
    Mar 31 at 20:17











  • Hi @Mico, I'm not actually sure. I'm still new to LaTeX. I actually just use overleaf.com for most things.

    – tjt263
    Mar 31 at 20:20






  • 2





    You might consider sagemath, if you want to have very sophisticated symbolic or numerical mathematics; it is free and open source, but requires a significant investment of time to learn.

    – Benjamin McKay
    Mar 31 at 20:28






  • 1





    @Mico Actually I just checked. The compiler I've been using is pdfLaTeX but have the others available too, if necessary.

    – tjt263
    Mar 31 at 20:29














5












5








5








I have the following template for a journal article featuring a basic table:





enter image description here





The code looks something like this:



documentclass[jou,apacite]{apa6}
usepackage[utf8]{inputenc}
usepackage{amsmath}

title{Title of the article}
author{Author Name}
affiliation{Affiliation}

abstract{This is the abstract.}

begin{document}

maketitle
section{This is the heading for the first section of the article.}
Lorem ipsum.

Results are presented in Table~ref{tab1}.

begin{table}[!htb]
caption{Sample table.}label{tab1}
begin{tabular}{ccc}
hline\[-1.5ex]
AAA & BBB & CCC \[0.5ex]
hline\[-1.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
hline
end{tabular}
end{table}


section{This is the heading for the second section of the article.}
Lorem ipsum.

end{document}




What I want to know is:
Rather than typing in every value of a table manually, and potentially mistyping a digit or a decimal point here or there; is LaTeX capable of evaluating the math for me?



Consider the odds or probability of a coin toss winning streak, for example:




Each flip has 50:50 (1:1) odds:
50% probability of winning
50% probability of losing



The odds of winning two consecutive flips are 75:25 (3:1):

25% probability of winning
75% probability of losing



The odds of
winning three consecutive flips are 87.5:12.5 (7:1):

12.5% probability of winning

87.5% probability of losing



The odds of winning four consecutive flips are 93.75/6.25 (15:1):

6.25% probability of winning

93.75% probability of losing




..and so on.




Probability of winning n consecutive flips is 2^(-n) * 100.

Probability of not winning n consecutive flips is 100 - (2^(-n))
* 100




Of course I could just calculate each value and type in every cell manually, but I might want to show ten or more flips. Anyway, is this something LaTeX can do?










share|improve this question
















I have the following template for a journal article featuring a basic table:





enter image description here





The code looks something like this:



documentclass[jou,apacite]{apa6}
usepackage[utf8]{inputenc}
usepackage{amsmath}

title{Title of the article}
author{Author Name}
affiliation{Affiliation}

abstract{This is the abstract.}

begin{document}

maketitle
section{This is the heading for the first section of the article.}
Lorem ipsum.

Results are presented in Table~ref{tab1}.

begin{table}[!htb]
caption{Sample table.}label{tab1}
begin{tabular}{ccc}
hline\[-1.5ex]
AAA & BBB & CCC \[0.5ex]
hline\[-1.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
1.0 & 2.0 & 3.0\[0.5ex]
hline
end{tabular}
end{table}


section{This is the heading for the second section of the article.}
Lorem ipsum.

end{document}




What I want to know is:
Rather than typing in every value of a table manually, and potentially mistyping a digit or a decimal point here or there; is LaTeX capable of evaluating the math for me?



Consider the odds or probability of a coin toss winning streak, for example:




Each flip has 50:50 (1:1) odds:
50% probability of winning
50% probability of losing



The odds of winning two consecutive flips are 75:25 (3:1):

25% probability of winning
75% probability of losing



The odds of
winning three consecutive flips are 87.5:12.5 (7:1):

12.5% probability of winning

87.5% probability of losing



The odds of winning four consecutive flips are 93.75/6.25 (15:1):

6.25% probability of winning

93.75% probability of losing




..and so on.




Probability of winning n consecutive flips is 2^(-n) * 100.

Probability of not winning n consecutive flips is 100 - (2^(-n))
* 100




Of course I could just calculate each value and type in every cell manually, but I might want to show ten or more flips. Anyway, is this something LaTeX can do?







tables equations amsmath calculations






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Mar 31 at 20:24







tjt263

















asked Mar 31 at 20:11









tjt263tjt263

2637




2637













  • Are you free to use LuaLaTeX, or must you use either pdfLaTeX or XeLaTeX?

    – Mico
    Mar 31 at 20:17











  • Hi @Mico, I'm not actually sure. I'm still new to LaTeX. I actually just use overleaf.com for most things.

    – tjt263
    Mar 31 at 20:20






  • 2





    You might consider sagemath, if you want to have very sophisticated symbolic or numerical mathematics; it is free and open source, but requires a significant investment of time to learn.

    – Benjamin McKay
    Mar 31 at 20:28






  • 1





    @Mico Actually I just checked. The compiler I've been using is pdfLaTeX but have the others available too, if necessary.

    – tjt263
    Mar 31 at 20:29



















  • Are you free to use LuaLaTeX, or must you use either pdfLaTeX or XeLaTeX?

    – Mico
    Mar 31 at 20:17











  • Hi @Mico, I'm not actually sure. I'm still new to LaTeX. I actually just use overleaf.com for most things.

    – tjt263
    Mar 31 at 20:20






  • 2





    You might consider sagemath, if you want to have very sophisticated symbolic or numerical mathematics; it is free and open source, but requires a significant investment of time to learn.

    – Benjamin McKay
    Mar 31 at 20:28






  • 1





    @Mico Actually I just checked. The compiler I've been using is pdfLaTeX but have the others available too, if necessary.

    – tjt263
    Mar 31 at 20:29

















Are you free to use LuaLaTeX, or must you use either pdfLaTeX or XeLaTeX?

– Mico
Mar 31 at 20:17





Are you free to use LuaLaTeX, or must you use either pdfLaTeX or XeLaTeX?

– Mico
Mar 31 at 20:17













Hi @Mico, I'm not actually sure. I'm still new to LaTeX. I actually just use overleaf.com for most things.

– tjt263
Mar 31 at 20:20





Hi @Mico, I'm not actually sure. I'm still new to LaTeX. I actually just use overleaf.com for most things.

– tjt263
Mar 31 at 20:20




2




2





You might consider sagemath, if you want to have very sophisticated symbolic or numerical mathematics; it is free and open source, but requires a significant investment of time to learn.

– Benjamin McKay
Mar 31 at 20:28





You might consider sagemath, if you want to have very sophisticated symbolic or numerical mathematics; it is free and open source, but requires a significant investment of time to learn.

– Benjamin McKay
Mar 31 at 20:28




1




1





@Mico Actually I just checked. The compiler I've been using is pdfLaTeX but have the others available too, if necessary.

– tjt263
Mar 31 at 20:29





@Mico Actually I just checked. The compiler I've been using is pdfLaTeX but have the others available too, if necessary.

– tjt263
Mar 31 at 20:29










2 Answers
2






active

oldest

votes


















7














Here's a LuaLaTeX-based solution to the problem of printing a table of run probabilities -- if the underlying experiment is tossing a "fair" coin.



enter image description here



% !TEX TS-program = lualatex
documentclass[jou,apacite]{apa6}
usepackage{amsmath,booktabs,lipsum}
letPrrelax % undefine "Pr"
DeclareMathOperator{Pr}{Pr}

usepackage{unicode-math} % choose suitable math and text fonts
setmainfont{Stix Two Text}[Ligatures={TeX,Common}]
setmathfont{Stix Two Math}

title{Title of the article}
shorttitle{Title}
author{Author Name}
affiliation{Affiliation}
abstract{This is the abstract.}

usepackage{luacode}
begin{luacode}


function run_prob ( j )
return (0.5)^j
end
function printrows ( n )
for i=1,n do
runprob = 100*run_prob(i)
runprobcomp = 100-runprob
tex.sprint ( i .. "&" .. runprob .. "&" .. runprobcomp .. "\\" )
end
end


end{luacode}

begin{document}
maketitle

section{In the beginning}
Lorem ipsum.

Results are presented in Table~ref{tab1}.

begin{table}[!htb]
caption{Fair coin tosses: Probabilities of runs of length $n$, in percent.}label{tab1}

$begin{array}{@{}lll@{}}
toprule
n & Pr(text{Run}) & 100-Pr(text{Run})\
midrule
%% Invoke the 'printrows' Lua function:
directlua{printrows(12)}
bottomrule
end{array}$
end{table}

lipsum[1-3]
end{document}





share|improve this answer































    2














    A solution using the CAS, Sage, given below. The documentation for sagetex on CTAN is here and an example using Sage/LaTeX/sagetex is here. Sage is not part of the LaTeX distribution so it needs to be installed on your machine or open a free Cocalc account (the easiest way). Here is the code.



    documentclass[jou,apacite]{apa6}
    usepackage[utf8]{inputenc}
    usepackage{amsmath}
    usepackage{sagetex}
    title{Title of the article}
    author{Author Name}
    affiliation{Affiliation}
    abstract{This is the abstract.}

    begin{document}
    begin{sagesilent}
    output = r"begin{table}[!htb]"
    output += r"caption{Sample table.}label{tab1}"
    output += r"begin{tabular}{ccc}"
    output += r"hline"
    for i in range(1,13):
    output += r"%s & %s & %s \"%(i,(100*.5^i).n(digits=7),(100-100*.5^i).n(digits=7))
    output += r"hline"
    output += r"end{tabular}"
    output += r"end{table}"
    end{sagesilent}

    maketitle
    section{This is the heading for the first section of the article.}
    The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%.
    The probability of $7$ consecutive flips is given by $sage{(100*(.5)^7).n(digits=7)}$%.

    Applying this to other values we can create the Table below:
    Results are presented in Table~ref{tab1}.
    sagestr{output}
    section{This is the heading for the second section of the article.}
    Lorem ipsum.
    end{document}


    The output running in Cocalc is shown below:
    enter image description here
    In order to create the table with a loop, Sage has to run. When you build your file in Cocalc, LaTeX runs, then Sage, then LaTeX (where the results from the Sage run are inserted). This means in order for the first pass of LaTeX to compile, the table is not there. It gets created as a string in Sage and then inserted for the final LaTeX compilation. sagestr{} gets string data as opposed to sage{} for numerical data. Two nice features that you get with Sage: the ability to do calculations on the fly such as with the line The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%. where digits=7 sets the number of significant figures to use in the answer and Sage also can handle numerous probability distributions, see here. Finally, Sage allows you to use Python in your coding. With a CAS, Python, and LaTeX you can do pretty much anything.






    share|improve this answer


























      Your Answer








      StackExchange.ready(function() {
      var channelOptions = {
      tags: "".split(" "),
      id: "85"
      };
      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%2ftex.stackexchange.com%2fquestions%2f482495%2fcomputationally-populating-tables-with-probability-data%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









      7














      Here's a LuaLaTeX-based solution to the problem of printing a table of run probabilities -- if the underlying experiment is tossing a "fair" coin.



      enter image description here



      % !TEX TS-program = lualatex
      documentclass[jou,apacite]{apa6}
      usepackage{amsmath,booktabs,lipsum}
      letPrrelax % undefine "Pr"
      DeclareMathOperator{Pr}{Pr}

      usepackage{unicode-math} % choose suitable math and text fonts
      setmainfont{Stix Two Text}[Ligatures={TeX,Common}]
      setmathfont{Stix Two Math}

      title{Title of the article}
      shorttitle{Title}
      author{Author Name}
      affiliation{Affiliation}
      abstract{This is the abstract.}

      usepackage{luacode}
      begin{luacode}


      function run_prob ( j )
      return (0.5)^j
      end
      function printrows ( n )
      for i=1,n do
      runprob = 100*run_prob(i)
      runprobcomp = 100-runprob
      tex.sprint ( i .. "&" .. runprob .. "&" .. runprobcomp .. "\\" )
      end
      end


      end{luacode}

      begin{document}
      maketitle

      section{In the beginning}
      Lorem ipsum.

      Results are presented in Table~ref{tab1}.

      begin{table}[!htb]
      caption{Fair coin tosses: Probabilities of runs of length $n$, in percent.}label{tab1}

      $begin{array}{@{}lll@{}}
      toprule
      n & Pr(text{Run}) & 100-Pr(text{Run})\
      midrule
      %% Invoke the 'printrows' Lua function:
      directlua{printrows(12)}
      bottomrule
      end{array}$
      end{table}

      lipsum[1-3]
      end{document}





      share|improve this answer




























        7














        Here's a LuaLaTeX-based solution to the problem of printing a table of run probabilities -- if the underlying experiment is tossing a "fair" coin.



        enter image description here



        % !TEX TS-program = lualatex
        documentclass[jou,apacite]{apa6}
        usepackage{amsmath,booktabs,lipsum}
        letPrrelax % undefine "Pr"
        DeclareMathOperator{Pr}{Pr}

        usepackage{unicode-math} % choose suitable math and text fonts
        setmainfont{Stix Two Text}[Ligatures={TeX,Common}]
        setmathfont{Stix Two Math}

        title{Title of the article}
        shorttitle{Title}
        author{Author Name}
        affiliation{Affiliation}
        abstract{This is the abstract.}

        usepackage{luacode}
        begin{luacode}


        function run_prob ( j )
        return (0.5)^j
        end
        function printrows ( n )
        for i=1,n do
        runprob = 100*run_prob(i)
        runprobcomp = 100-runprob
        tex.sprint ( i .. "&" .. runprob .. "&" .. runprobcomp .. "\\" )
        end
        end


        end{luacode}

        begin{document}
        maketitle

        section{In the beginning}
        Lorem ipsum.

        Results are presented in Table~ref{tab1}.

        begin{table}[!htb]
        caption{Fair coin tosses: Probabilities of runs of length $n$, in percent.}label{tab1}

        $begin{array}{@{}lll@{}}
        toprule
        n & Pr(text{Run}) & 100-Pr(text{Run})\
        midrule
        %% Invoke the 'printrows' Lua function:
        directlua{printrows(12)}
        bottomrule
        end{array}$
        end{table}

        lipsum[1-3]
        end{document}





        share|improve this answer


























          7












          7








          7







          Here's a LuaLaTeX-based solution to the problem of printing a table of run probabilities -- if the underlying experiment is tossing a "fair" coin.



          enter image description here



          % !TEX TS-program = lualatex
          documentclass[jou,apacite]{apa6}
          usepackage{amsmath,booktabs,lipsum}
          letPrrelax % undefine "Pr"
          DeclareMathOperator{Pr}{Pr}

          usepackage{unicode-math} % choose suitable math and text fonts
          setmainfont{Stix Two Text}[Ligatures={TeX,Common}]
          setmathfont{Stix Two Math}

          title{Title of the article}
          shorttitle{Title}
          author{Author Name}
          affiliation{Affiliation}
          abstract{This is the abstract.}

          usepackage{luacode}
          begin{luacode}


          function run_prob ( j )
          return (0.5)^j
          end
          function printrows ( n )
          for i=1,n do
          runprob = 100*run_prob(i)
          runprobcomp = 100-runprob
          tex.sprint ( i .. "&" .. runprob .. "&" .. runprobcomp .. "\\" )
          end
          end


          end{luacode}

          begin{document}
          maketitle

          section{In the beginning}
          Lorem ipsum.

          Results are presented in Table~ref{tab1}.

          begin{table}[!htb]
          caption{Fair coin tosses: Probabilities of runs of length $n$, in percent.}label{tab1}

          $begin{array}{@{}lll@{}}
          toprule
          n & Pr(text{Run}) & 100-Pr(text{Run})\
          midrule
          %% Invoke the 'printrows' Lua function:
          directlua{printrows(12)}
          bottomrule
          end{array}$
          end{table}

          lipsum[1-3]
          end{document}





          share|improve this answer













          Here's a LuaLaTeX-based solution to the problem of printing a table of run probabilities -- if the underlying experiment is tossing a "fair" coin.



          enter image description here



          % !TEX TS-program = lualatex
          documentclass[jou,apacite]{apa6}
          usepackage{amsmath,booktabs,lipsum}
          letPrrelax % undefine "Pr"
          DeclareMathOperator{Pr}{Pr}

          usepackage{unicode-math} % choose suitable math and text fonts
          setmainfont{Stix Two Text}[Ligatures={TeX,Common}]
          setmathfont{Stix Two Math}

          title{Title of the article}
          shorttitle{Title}
          author{Author Name}
          affiliation{Affiliation}
          abstract{This is the abstract.}

          usepackage{luacode}
          begin{luacode}


          function run_prob ( j )
          return (0.5)^j
          end
          function printrows ( n )
          for i=1,n do
          runprob = 100*run_prob(i)
          runprobcomp = 100-runprob
          tex.sprint ( i .. "&" .. runprob .. "&" .. runprobcomp .. "\\" )
          end
          end


          end{luacode}

          begin{document}
          maketitle

          section{In the beginning}
          Lorem ipsum.

          Results are presented in Table~ref{tab1}.

          begin{table}[!htb]
          caption{Fair coin tosses: Probabilities of runs of length $n$, in percent.}label{tab1}

          $begin{array}{@{}lll@{}}
          toprule
          n & Pr(text{Run}) & 100-Pr(text{Run})\
          midrule
          %% Invoke the 'printrows' Lua function:
          directlua{printrows(12)}
          bottomrule
          end{array}$
          end{table}

          lipsum[1-3]
          end{document}






          share|improve this answer












          share|improve this answer



          share|improve this answer










          answered Mar 31 at 21:05









          MicoMico

          285k31388778




          285k31388778























              2














              A solution using the CAS, Sage, given below. The documentation for sagetex on CTAN is here and an example using Sage/LaTeX/sagetex is here. Sage is not part of the LaTeX distribution so it needs to be installed on your machine or open a free Cocalc account (the easiest way). Here is the code.



              documentclass[jou,apacite]{apa6}
              usepackage[utf8]{inputenc}
              usepackage{amsmath}
              usepackage{sagetex}
              title{Title of the article}
              author{Author Name}
              affiliation{Affiliation}
              abstract{This is the abstract.}

              begin{document}
              begin{sagesilent}
              output = r"begin{table}[!htb]"
              output += r"caption{Sample table.}label{tab1}"
              output += r"begin{tabular}{ccc}"
              output += r"hline"
              for i in range(1,13):
              output += r"%s & %s & %s \"%(i,(100*.5^i).n(digits=7),(100-100*.5^i).n(digits=7))
              output += r"hline"
              output += r"end{tabular}"
              output += r"end{table}"
              end{sagesilent}

              maketitle
              section{This is the heading for the first section of the article.}
              The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%.
              The probability of $7$ consecutive flips is given by $sage{(100*(.5)^7).n(digits=7)}$%.

              Applying this to other values we can create the Table below:
              Results are presented in Table~ref{tab1}.
              sagestr{output}
              section{This is the heading for the second section of the article.}
              Lorem ipsum.
              end{document}


              The output running in Cocalc is shown below:
              enter image description here
              In order to create the table with a loop, Sage has to run. When you build your file in Cocalc, LaTeX runs, then Sage, then LaTeX (where the results from the Sage run are inserted). This means in order for the first pass of LaTeX to compile, the table is not there. It gets created as a string in Sage and then inserted for the final LaTeX compilation. sagestr{} gets string data as opposed to sage{} for numerical data. Two nice features that you get with Sage: the ability to do calculations on the fly such as with the line The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%. where digits=7 sets the number of significant figures to use in the answer and Sage also can handle numerous probability distributions, see here. Finally, Sage allows you to use Python in your coding. With a CAS, Python, and LaTeX you can do pretty much anything.






              share|improve this answer






























                2














                A solution using the CAS, Sage, given below. The documentation for sagetex on CTAN is here and an example using Sage/LaTeX/sagetex is here. Sage is not part of the LaTeX distribution so it needs to be installed on your machine or open a free Cocalc account (the easiest way). Here is the code.



                documentclass[jou,apacite]{apa6}
                usepackage[utf8]{inputenc}
                usepackage{amsmath}
                usepackage{sagetex}
                title{Title of the article}
                author{Author Name}
                affiliation{Affiliation}
                abstract{This is the abstract.}

                begin{document}
                begin{sagesilent}
                output = r"begin{table}[!htb]"
                output += r"caption{Sample table.}label{tab1}"
                output += r"begin{tabular}{ccc}"
                output += r"hline"
                for i in range(1,13):
                output += r"%s & %s & %s \"%(i,(100*.5^i).n(digits=7),(100-100*.5^i).n(digits=7))
                output += r"hline"
                output += r"end{tabular}"
                output += r"end{table}"
                end{sagesilent}

                maketitle
                section{This is the heading for the first section of the article.}
                The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%.
                The probability of $7$ consecutive flips is given by $sage{(100*(.5)^7).n(digits=7)}$%.

                Applying this to other values we can create the Table below:
                Results are presented in Table~ref{tab1}.
                sagestr{output}
                section{This is the heading for the second section of the article.}
                Lorem ipsum.
                end{document}


                The output running in Cocalc is shown below:
                enter image description here
                In order to create the table with a loop, Sage has to run. When you build your file in Cocalc, LaTeX runs, then Sage, then LaTeX (where the results from the Sage run are inserted). This means in order for the first pass of LaTeX to compile, the table is not there. It gets created as a string in Sage and then inserted for the final LaTeX compilation. sagestr{} gets string data as opposed to sage{} for numerical data. Two nice features that you get with Sage: the ability to do calculations on the fly such as with the line The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%. where digits=7 sets the number of significant figures to use in the answer and Sage also can handle numerous probability distributions, see here. Finally, Sage allows you to use Python in your coding. With a CAS, Python, and LaTeX you can do pretty much anything.






                share|improve this answer




























                  2












                  2








                  2







                  A solution using the CAS, Sage, given below. The documentation for sagetex on CTAN is here and an example using Sage/LaTeX/sagetex is here. Sage is not part of the LaTeX distribution so it needs to be installed on your machine or open a free Cocalc account (the easiest way). Here is the code.



                  documentclass[jou,apacite]{apa6}
                  usepackage[utf8]{inputenc}
                  usepackage{amsmath}
                  usepackage{sagetex}
                  title{Title of the article}
                  author{Author Name}
                  affiliation{Affiliation}
                  abstract{This is the abstract.}

                  begin{document}
                  begin{sagesilent}
                  output = r"begin{table}[!htb]"
                  output += r"caption{Sample table.}label{tab1}"
                  output += r"begin{tabular}{ccc}"
                  output += r"hline"
                  for i in range(1,13):
                  output += r"%s & %s & %s \"%(i,(100*.5^i).n(digits=7),(100-100*.5^i).n(digits=7))
                  output += r"hline"
                  output += r"end{tabular}"
                  output += r"end{table}"
                  end{sagesilent}

                  maketitle
                  section{This is the heading for the first section of the article.}
                  The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%.
                  The probability of $7$ consecutive flips is given by $sage{(100*(.5)^7).n(digits=7)}$%.

                  Applying this to other values we can create the Table below:
                  Results are presented in Table~ref{tab1}.
                  sagestr{output}
                  section{This is the heading for the second section of the article.}
                  Lorem ipsum.
                  end{document}


                  The output running in Cocalc is shown below:
                  enter image description here
                  In order to create the table with a loop, Sage has to run. When you build your file in Cocalc, LaTeX runs, then Sage, then LaTeX (where the results from the Sage run are inserted). This means in order for the first pass of LaTeX to compile, the table is not there. It gets created as a string in Sage and then inserted for the final LaTeX compilation. sagestr{} gets string data as opposed to sage{} for numerical data. Two nice features that you get with Sage: the ability to do calculations on the fly such as with the line The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%. where digits=7 sets the number of significant figures to use in the answer and Sage also can handle numerous probability distributions, see here. Finally, Sage allows you to use Python in your coding. With a CAS, Python, and LaTeX you can do pretty much anything.






                  share|improve this answer















                  A solution using the CAS, Sage, given below. The documentation for sagetex on CTAN is here and an example using Sage/LaTeX/sagetex is here. Sage is not part of the LaTeX distribution so it needs to be installed on your machine or open a free Cocalc account (the easiest way). Here is the code.



                  documentclass[jou,apacite]{apa6}
                  usepackage[utf8]{inputenc}
                  usepackage{amsmath}
                  usepackage{sagetex}
                  title{Title of the article}
                  author{Author Name}
                  affiliation{Affiliation}
                  abstract{This is the abstract.}

                  begin{document}
                  begin{sagesilent}
                  output = r"begin{table}[!htb]"
                  output += r"caption{Sample table.}label{tab1}"
                  output += r"begin{tabular}{ccc}"
                  output += r"hline"
                  for i in range(1,13):
                  output += r"%s & %s & %s \"%(i,(100*.5^i).n(digits=7),(100-100*.5^i).n(digits=7))
                  output += r"hline"
                  output += r"end{tabular}"
                  output += r"end{table}"
                  end{sagesilent}

                  maketitle
                  section{This is the heading for the first section of the article.}
                  The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%.
                  The probability of $7$ consecutive flips is given by $sage{(100*(.5)^7).n(digits=7)}$%.

                  Applying this to other values we can create the Table below:
                  Results are presented in Table~ref{tab1}.
                  sagestr{output}
                  section{This is the heading for the second section of the article.}
                  Lorem ipsum.
                  end{document}


                  The output running in Cocalc is shown below:
                  enter image description here
                  In order to create the table with a loop, Sage has to run. When you build your file in Cocalc, LaTeX runs, then Sage, then LaTeX (where the results from the Sage run are inserted). This means in order for the first pass of LaTeX to compile, the table is not there. It gets created as a string in Sage and then inserted for the final LaTeX compilation. sagestr{} gets string data as opposed to sage{} for numerical data. Two nice features that you get with Sage: the ability to do calculations on the fly such as with the line The probability of $6$ consecutive flips is given by $sage{(100*(.5)^6).n(digits=7)}$%. where digits=7 sets the number of significant figures to use in the answer and Sage also can handle numerous probability distributions, see here. Finally, Sage allows you to use Python in your coding. With a CAS, Python, and LaTeX you can do pretty much anything.







                  share|improve this answer














                  share|improve this answer



                  share|improve this answer








                  edited 2 days ago

























                  answered 2 days ago









                  DJPDJP

                  7,95921732




                  7,95921732






























                      draft saved

                      draft discarded




















































                      Thanks for contributing an answer to TeX - LaTeX 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%2ftex.stackexchange.com%2fquestions%2f482495%2fcomputationally-populating-tables-with-probability-data%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

                      How did Captain America manage to do this?

                      迪纳利

                      南乌拉尔铁路局