Computationally populating tables with probability data
I have the following template for a journal article featuring a basic table:
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
add a comment |
I have the following template for a journal article featuring a basic table:
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
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 ispdfLaTeX
but have the others available too, if necessary.
– tjt263
Mar 31 at 20:29
add a comment |
I have the following template for a journal article featuring a basic table:
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
I have the following template for a journal article featuring a basic table:
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
tables equations amsmath calculations
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 ispdfLaTeX
but have the others available too, if necessary.
– tjt263
Mar 31 at 20:29
add a comment |
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 ispdfLaTeX
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
add a comment |
2 Answers
2
active
oldest
votes
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.
% !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}
add a comment |
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:
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.
add a comment |
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
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
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.
% !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}
add a comment |
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.
% !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}
add a comment |
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.
% !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}
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.
% !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}
answered Mar 31 at 21:05
MicoMico
285k31388778
285k31388778
add a comment |
add a comment |
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:
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.
add a comment |
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:
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.
add a comment |
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:
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.
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:
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.
edited 2 days ago
answered 2 days ago
DJPDJP
7,95921732
7,95921732
add a comment |
add a comment |
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.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
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
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
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
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