cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
  • JMP will suspend normal business operations for our Winter Holiday beginning on Wednesday, Dec. 24, 2025, at 5:00 p.m. ET (2:00 p.m. ET for JMP Accounts Receivable).
    Regular business hours will resume at 9:00 a.m. ET on Friday, Jan. 2, 2026.
  • We’re retiring the File Exchange at the end of this year. The JMP Marketplace is now your destination for add-ins and extensions.

Discussions

Solve problems, and share tips and tricks with other JMP users.
%3CLINGO-SUB%20id%3D%22lingo-sub-527159%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3ETabulate%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E5%8F%8E%E9%87%8F%E3%81%AE%E8%A8%88%E7%AE%97%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-527159%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3E%3CP%3E%E3%81%93%E3%82%93%E3%81%AB%E3%81%A1%E3%81%AF%E3%80%81%E3%81%BF%E3%82%93%E3%81%AA%E3%80%81%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3CP%3E%E7%8F%BE%E5%9C%A8%E3%80%81%E3%81%95%E3%81%BE%E3%81%96%E3%81%BE%E3%81%AA%E6%B8%A9%E5%BA%A6%E3%81%AB%E3%81%8A%E3%81%91%E3%82%8B%E3%83%86%E3%82%B9%E3%83%88%E3%81%AE%E6%AD%A9%E7%95%99%E3%81%BE%E3%82%8A%E3%82%92%E8%87%AA%E5%8B%95%E7%9A%84%E3%81%AB%E8%A8%88%E7%AE%97%E3%81%99%E3%82%8B%E3%82%B9%E3%82%AF%E3%83%AA%E3%83%97%E3%83%88%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%82%88%E3%81%86%E3%81%A8%E3%81%97%E3%81%A6%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%20%E8%A1%A8%E5%85%A8%E4%BD%93%E3%81%A7%E3%81%99%E3%81%B9%E3%81%A6%E3%81%AE%E3%80%8C%E5%90%88%E6%A0%BC%E3%80%8D%E3%82%92%201%20%E3%81%AB%E7%BD%AE%E3%81%8D%E6%8F%9B%E3%81%88%E3%80%81%E3%80%8C%E4%B8%8D%E5%90%88%E6%A0%BC%E3%80%8D%E3%82%92%200%20%E3%81%AB%E7%BD%AE%E3%81%8D%E6%8F%9B%E3%81%88%E3%81%A6%E5%90%88%E8%A8%88%E3%82%92%E8%A8%88%E7%AE%97%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F%E3%80%82%20%E4%BB%A5%E4%B8%8B%E3%81%AF%E7%8F%BE%E5%9C%A8%E3%81%AE%E8%A1%A8%E4%BD%9C%E6%88%90%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%81%A8%E3%81%9D%E3%81%AE%E3%82%B3%E3%83%BC%E3%83%89%E3%81%A7%E3%81%99%E3%80%82%20%E7%A7%81%E3%81%AE%E7%9B%AE%E6%A8%99%E3%81%AF%E3%80%81%E5%90%84%E6%B8%A9%E5%BA%A6%E3%81%AB%E5%AF%BE%E3%81%97%E3%81%A6%203%20%E7%95%AA%E7%9B%AE%E3%81%AE%E5%88%97%E3%82%92%E4%BD%9C%E6%88%90%E3%81%97%E3%80%81%E5%8F%8E%E9%87%8F%20%3D%20((%E6%B8%A9%E5%BA%A6%E3%81%A7%E3%81%AE%E5%90%88%E8%A8%88)%2F(%E6%B8%A9%E5%BA%A6%E3%81%A7%E3%81%AE%20N))%20x%20100%20%E3%82%92%E8%A8%AD%E5%AE%9A%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%A7%E3%81%99%E3%80%82%20%E3%81%93%E3%82%8C%E3%82%92%E5%AE%9F%E8%A3%85%E3%81%99%E3%82%8B%E3%81%AE%E3%81%8C%E5%9B%B0%E9%9B%A3%E3%81%A7%E3%81%99%E3%80%82%20Tabulate%E3%81%A7%E3%81%93%E3%82%8C%E3%82%92%E8%A1%8C%E3%81%86%E3%81%8B%E3%80%81%E5%90%84%E3%80%8CN%E3%80%8D%E5%88%97%E3%81%AE%E5%BE%8C%E3%81%ABYield%E5%88%97%E3%82%92%E6%8C%BF%E5%85%A5%E3%81%97%E3%80%81%E5%BC%8F%E5%86%85%E3%81%AE%E5%89%8D%E3%81%AE2%E3%81%A4%E3%81%AE%E5%88%97%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%A6%E5%8F%8E%E9%87%8F%E3%82%92%E8%A8%88%E7%AE%97%E3%81%99%E3%82%8B%E6%96%B9%E6%B3%95%E3%81%8C%E3%81%82%E3%82%8B%E3%81%A8%E6%80%9D%E3%81%84%E3%81%BE%E3%81%99%E3%81%8C%E3%80%81%E6%AC%A1%E3%81%AE%E3%82%88%E3%81%86%E3%81%AA%E6%96%B9%E6%B3%95%E3%81%A7%E3%81%9D%E3%82%8C%E3%82%92%E8%A1%8C%E3%81%86%E6%96%B9%E6%B3%95%E3%82%92%E8%80%83%E3%81%88%E3%82%8B%E3%81%AE%E3%81%8C%E5%9B%B0%E9%9B%A3%E3%81%A7%E3%81%99%E3%80%82%E5%8F%AF%E5%A4%89%E3%81%AE%E3%82%AB%E3%83%A9%E3%83%A0%E6%95%B0%E3%81%A8%E3%83%86%E3%82%B9%E3%83%88%E6%B8%A9%E5%BA%A6%E3%82%92%E8%80%83%E6%85%AE%E3%81%97%E3%81%BE%E3%81%99%E3%80%82%20%E5%8A%A9%E3%81%91%E3%81%A6%E3%81%84%E3%81%9F%E3%81%A0%E3%81%91%E3%82%8C%E3%81%B0%E5%B9%B8%E3%81%84%E3%81%A7%E3%81%99%E3%80%82%20%E5%89%8D%E3%82%82%E3%81%A3%E3%81%A6%E6%84%9F%E8%AC%9D%E3%81%97%E3%81%BE%E3%81%99%EF%BC%81%3C%2FP%3E%3CPRE%3E%3CCODE%20class%3D%22%20language-jsl%22%3Elist%20%3D%20dt%20%26lt%3B%26lt%3B%20Get%20Column%20Names(%20string%20)%3B%0ARemove%20From(list%2C%201%2C%20testIndex)%3B%0A%0AyieldByTest%20%3D%20(dt%20%26lt%3B%26lt%3B%20Tabulate(%0A%20%20Add%20Table(%0A%20%20%20Column%20Table(%0A%20%20%20%20Grouping%20Columns(%3Atst_temp)%2C%0A%20%20%20%20Statistics(Sum%2C%20N%2C%20Mean)%0A%20%20%20)%2C%0A%20%20%20Row%20Table(%0A%20%20%20%20Analysis%20Columns(Eval(list))%0A%20%20%20)%0A%20%20)%2Cinvisible%0A%20)%0A)%20%26lt%3B%26lt%3B%20Make%20Into%20data%20Table%3B%0AyieldByTest%20%26lt%3B%26lt%3B%20Set%20Name(%22Yield%20by%20Test%20Across%20Temperature%22)%3B%3C%2FCODE%3E%3C%2FPRE%3E%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22MichaelO_0-1658942858087.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22MichaelO_0-1658942858087.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22MichaelO_0-1658942858087.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.jmp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F44378iC680FA5A9244611C%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22MichaelO_0-1658942858087.png%22%20alt%3D%22MichaelO_0-1658942858087.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-LABS%20id%3D%22lingo-labs-527159%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3E%3CLINGO-LABEL%3E%E5%93%81%E8%B3%AA%E3%81%8A%E3%82%88%E3%81%B3%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%82%A8%E3%83%B3%E3%82%B8%E3%83%8B%E3%82%A2%E3%83%AA%E3%83%B3%E3%82%B0%3C%2FLINGO-LABEL%3E%3CLINGO-LABEL%3E%E3%82%A6%E3%82%A3%E3%83%B3%E3%83%89%E3%82%A6%E3%82%BA%3C%2FLINGO-LABEL%3E%3C%2FLINGO-LABS%3E%3CLINGO-SUB%20id%3D%22lingo-sub-528265%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3ERe%3A%20Tabulate%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E5%88%A9%E5%9B%9E%E3%82%8A%E3%81%AE%E8%A8%88%E7%AE%97%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-528265%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3E%3CP%3E%E5%B9%B3%E5%9D%87%E5%80%A4%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%93%E3%81%A8%E3%81%AB%E3%81%AF%E6%84%8F%E5%91%B3%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%20%E3%81%9D%E3%82%93%E3%81%AA%E3%81%93%E3%81%A8%E8%80%83%E3%81%88%E3%82%82%E3%81%97%E3%81%AA%E3%81%8B%E3%81%A3%E3%81%9F%E3%81%AA%E3%82%93%E3%81%A6%E4%BF%A1%E3%81%98%E3%82%89%E3%82%8C%E3%81%AA%E3%81%84%EF%BC%81%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-527884%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3ERe%3A%20Tabulate%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E5%88%A9%E5%9B%9E%E3%82%8A%E3%81%AE%E8%A8%88%E7%AE%97%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-527884%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3E%3CP%3E%E3%81%93%E3%82%8C%E3%81%AF%E4%BB%A5%E4%B8%8B%E3%81%AE%E4%BE%8B%E3%81%AE%E3%82%88%E3%81%86%E3%81%AB%E3%81%A7%E3%81%8D%E3%82%8B%E3%81%A8%E6%80%9D%E3%81%84%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22Georg_0-1659042600705.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Georg_0-1659042600705.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22Georg_0-1659042600705.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.jmp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F44400iBDBC2E3E8F87C9AE%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22Georg_0-1659042600705.png%22%20alt%3D%22Georg_0-1659042600705.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CPRE%3E%3CCODE%20class%3D%22%20language-jsl%22%3ENames%20Default%20To%20Here(%201%20)%3B%0A%0A%2F%2F%20generate%20yield%20table%0Adt1%20%3D%20New%20Table(%20%22dt1%22%2C%20add%20rows(%209%20)%2C%20New%20Column(%20%22Process%22%2C%20%22Character%22%2C%20values(%20Repeat(%20%7B%22A%22%2C%20%22B%22%2C%20%22C%22%7D%2C%203%20)%20)%20)%20)%3B%0Adt2%20%3D%20New%20Table(%20%22dt2%22%2C%20add%20rows(%209%20)%2C%20New%20Column(%20%22Temperature%22%2C%20%22Nominal%22%2C%20values(%20Repeat(%20%7B30%2C%2040%2C%2050%7D%2C%203%20)%20)%20)%20)%3B%0Adty%20%3D%20dt1%20%26lt%3B%26lt%3B%20join(%20with(%20dt2%20)%2C%20Cartesian%20Join%20)%3B%0AFor%20Each(%20%7Bdt%7D%2C%20%7Bdt1%2C%20dt2%7D%2C%20Close(%20dt%2C%20%22NoSave%22%20)%20)%3B%0Adty%20%26lt%3B%26lt%3B%20set%20name(%20%22yield%22%20)%3B%0Adty%20%26lt%3B%26lt%3B%20New%20Column(%20%22yield%22%2C%20%22Numeric%22%2C%20%22Continuous%22%2C%20set%20each%20value(%20Random%20Integer(%200%2C%201%20)%20)%20)%3B%0A%0A%2F%2F%20tabulate%0Adty%20%26lt%3B%26lt%3B%20Tabulate(%0A%20Show%20Control%20Panel(%200%20)%2C%0A%20Add%20Table(%0A%20%20Column%20Table(%20Grouping%20Columns(%20%3ATemperature%20)%2C%20Statistics(%20Sum%2C%20N%2C%20Mean%20)%2C%20Analysis%20Columns(%20%3Ayield%20)%20)%2C%0A%20%20Row%20Table(%20Grouping%20Columns(%20%3AProcess%20)%20)%0A%20)%0A)%3B%3C%2FCODE%3E%3C%2FPRE%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-527176%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3ERe%3A%20Tabulate%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E5%88%A9%E5%9B%9E%E3%82%8A%E3%81%AE%E8%A8%88%E7%AE%97%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-527176%22%20slang%3D%22en-US%22%20mode%3D%22NONE%22%3E%3CP%3E%E8%A1%A8%E3%82%92%E4%BD%9C%E6%88%90%E3%81%99%E3%82%8B%E4%BB%A3%E3%82%8F%E3%82%8A%E3%81%AB%E6%A6%82%E8%A6%81%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%A8%E3%80%81%E5%8F%8E%E9%87%8F%E3%82%92%E8%A8%88%E7%AE%97%E3%81%99%E3%82%8B%E6%96%B9%E3%81%8C%E7%B0%A1%E5%8D%98%E3%81%AB%E3%81%AA%E3%82%8B%E5%A0%B4%E5%90%88%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22jthi_1-1658944191872.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_1-1658944191872.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_1-1658944191872.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.jmp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F44380iE27DDD7951B27A93%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22jthi_1-1658944191872.png%22%20alt%3D%22jthi_1-1658944191872.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3Etabulate%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%97%E3%81%9F%E3%81%84%E5%A0%B4%E5%90%88%E3%81%AF%E3%80%81%E3%83%87%E3%83%BC%E3%82%BF%E3%81%AE%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88%E6%96%B9%E6%B3%95%E3%81%AB%E5%BF%9C%E3%81%98%E3%81%A6%20%25%20Coluimn%20%E3%81%BE%E3%81%9F%E3%81%AF%20%25%20Row%20%E3%82%92%E4%BD%BF%E7%94%A8%E3%81%99%E3%82%8B%E3%81%AE%E3%81%8C%E6%9C%80%E3%82%82%E7%B0%A1%E5%8D%98%E3%81%8B%E3%82%82%E3%81%97%E3%82%8C%E3%81%BE%E3%81%9B%E3%82%93%E3%81%8C%E3%80%81%E3%81%9D%E3%82%8C%E3%81%A7%E3%82%82%E5%B0%91%E3%81%97%E5%A5%87%E5%A6%99%E3%81%AB%E8%A6%8B%E3%81%88%E3%82%8B%E3%83%86%E3%83%BC%E3%83%96%E3%83%AB%E3%81%8C%E4%BD%9C%E6%88%90%E3%81%95%E3%82%8C%E3%82%8B%E5%8F%AF%E8%83%BD%E6%80%A7%E3%81%8C%E3%81%82%E3%82%8A%E3%81%BE%E3%81%99%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%20lia-image-align-inline%22%20image-alt%3D%22jthi_0-1658944094800.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3CSPAN%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_0-1658944094800.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cspan%20class%3D%22lia-inline-image-display-wrapper%22%20image-alt%3D%22jthi_0-1658944094800.png%22%20style%3D%22width%3A%20400px%3B%22%3E%3Cimg%20src%3D%22https%3A%2F%2Fcommunity.jmp.com%2Ft5%2Fimage%2Fserverpage%2Fimage-id%2F44379i340566C90C4DA50E%2Fimage-size%2Fmedium%3Fv%3Dv2%26amp%3Bpx%3D400%22%20role%3D%22button%22%20title%3D%22jthi_0-1658944094800.png%22%20alt%3D%22jthi_0-1658944094800.png%22%20%2F%3E%3C%2Fspan%3E%3C%2FSPAN%3E%3C%2FSPAN%3E%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%3C%2FP%3E%3C%2FLINGO-BODY%3E
Choose Language Hide Translation Bar
MichaelO
Level III

Calculating Yield using Tabulate

Hi all,

 

I'm currently trying to write a script that will automatically calculate yields of tests across temperatures. I've replaced all "Pass" with 1's and "Fail" with a 0 throughout the table then calculated the sum. Below is my current Tabulate window and the code for this. My goal is to have a third column for each temperature with the yield which is  = ((Sum at Temp)/(N at Temp)) x 100. I'm having difficulties implementing this. I figure there is either a way to do this in Tabulate or to insert a Yield column after each "N" column and calculate the yield using the previous two columns in a formula, but am having trouble thinking how to do that in a way that accounts for a variable number of columns and test temperatures. Any help would be appreciated! Thanks in advance!

list = dt << Get Column Names( string );
Remove From(list, 1, testIndex);

yieldByTest = (dt << Tabulate(
		Add Table(
			Column Table(
				Grouping Columns(:tst_temp),
				Statistics(Sum, N, Mean)
			),
			Row Table(
				Analysis Columns(Eval(list))
			)
		),invisible
	)
) << Make Into data Table;
yieldByTest << Set Name("Yield by Test Across Temperature");

MichaelO_0-1658942858087.png

 

1 ACCEPTED SOLUTION

Accepted Solutions
Georg
Level VII

Re: Calculating Yield using Tabulate

I think this can be done like this example below.

 

Georg_0-1659042600705.png

Names Default To Here( 1 );

// generate yield table
dt1 = New Table( "dt1", add rows( 9 ), New Column( "Process", "Character", values( Repeat( {"A", "B", "C"}, 3 ) ) ) );
dt2 = New Table( "dt2", add rows( 9 ), New Column( "Temperature", "Nominal", values( Repeat( {30, 40, 50}, 3 ) ) ) );
dty = dt1 << join( with( dt2 ), Cartesian Join );
For Each( {dt}, {dt1, dt2}, Close( dt, "NoSave" ) );
dty << set name( "yield" );
dty << New Column( "yield", "Numeric", "Continuous", set each value( Random Integer( 0, 1 ) ) );

// tabulate
dty << Tabulate(
	Show Control Panel( 0 ),
	Add Table(
		Column Table( Grouping Columns( :Temperature ), Statistics( Sum, N, Mean ), Analysis Columns( :yield ) ),
		Row Table( Grouping Columns( :Process ) )
	)
);
Georg

View solution in original post

3 REPLIES 3
jthi
Super User

Re: Calculating Yield using Tabulate

It might be easier to calculate yield by using Summary instead of tabulate:

jthi_1-1658944191872.png

If you want to use tabulate it might be easiest by using % Coluimn or % Row depending on how your data is formatted and still you might end up with a bit weird looking table:

jthi_0-1658944094800.png

 

-Jarmo
Georg
Level VII

Re: Calculating Yield using Tabulate

I think this can be done like this example below.

 

Georg_0-1659042600705.png

Names Default To Here( 1 );

// generate yield table
dt1 = New Table( "dt1", add rows( 9 ), New Column( "Process", "Character", values( Repeat( {"A", "B", "C"}, 3 ) ) ) );
dt2 = New Table( "dt2", add rows( 9 ), New Column( "Temperature", "Nominal", values( Repeat( {30, 40, 50}, 3 ) ) ) );
dty = dt1 << join( with( dt2 ), Cartesian Join );
For Each( {dt}, {dt1, dt2}, Close( dt, "NoSave" ) );
dty << set name( "yield" );
dty << New Column( "yield", "Numeric", "Continuous", set each value( Random Integer( 0, 1 ) ) );

// tabulate
dty << Tabulate(
	Show Control Panel( 0 ),
	Add Table(
		Column Table( Grouping Columns( :Temperature ), Statistics( Sum, N, Mean ), Analysis Columns( :yield ) ),
		Row Table( Grouping Columns( :Process ) )
	)
);
Georg
MichaelO
Level III

Re: Calculating Yield using Tabulate

Using the mean makes sense. I can't believe I didn't think of that!

Recommended Articles