Products

GAMMA function

PRO

The GAMMA function in Jspreadsheet Formulas Pro calculates the gamma function, which is a broader version of the factorial function that works not only with integers but also with positive real and non-integer values If you input a number into this function, it performs the gamma operation on that number. The result can be used in a wide range of mathematical and scientific calculations. This powerful tool is a great addition to your spreadsheet toolkit, especially if you're dealing with advanced numerical data.

Documentation

Calculates the gamma function, which is a generalization of the factorial function to real numbers, including non-integers

Category

Statistical

Syntax

GAMMA(number)

Parameter Description
number The number for which you want to calculate the gamma function.

Behavior

The GAMMA function is used to return the Gamma function value. Here is how it handles different kinds of input:

  • Numbers: The GAMMA function handles positive numbers correctly and returns the correct Gamma function value. For negative integers and zero, the function returns an error as the Gamma function is undefined for these values.
  • Text: If a cell containing text is passed to the GAMMA function, it returns a #VALUE! error.
  • Booleans: When Boolean values (TRUE or FALSE) are used as input, they are treated as 1 and 0 respectively. However, since the Gamma function is undefined for 0, GAMMA(FALSE) would return an error.
  • Empty cells: If an empty cell is used as an argument, GAMMA function treats it as 0 and hence, returns an error.
  • Errors: If the reference cell contains an error, the GAMMA function also returns an error.

Common Errors

Error Description
#VALUE! This error occurs when the input argument to the GAMMA function is non-numeric, such as a text string.
#NUM! This error is returned when the input to the GAMMA function is a negative integer or zero, as the Gamma function is undefined for these values.

Best practices

  • Always ensure that the input to the GAMMA function is a positive number. Negative integers and zero will result in an error.
  • Be careful when referencing cells as input to the GAMMA function. Ensure these cells do not contain text, errors, or empty values to avoid unexpected errors.
  • Use error handling functions like IFERROR to handle possible errors and improve the robustness of your spreadsheet.
  • The GAMMA function can handle real numbers as well. However, be aware that the results for non-integer values may not be as immediately understandable as for integers.

Usage

A few examples using the GAMMA function.

GAMMA(0.5) // Returns 1.77245385091  
GAMMA(2.5) // Returns 1.32934038818  
GAMMA(4)   // Returns 6  
GAMMA(0)   // Returns #NUM! (undefined for zero)  
GAMMA("A") // Returns #VALUE! (non-numeric input)    

Interactive Spreadsheet Demo

<html>
<script src="https://jspreadsheet.com/v11/jspreadsheet.js"></script>
<script src="https://jsuites.net/v5/jsuites.js"></script>
<link rel="stylesheet" href="https://jsuites.net/v5/jsuites.css" type="text/css" />
<link rel="stylesheet" href="https://jspreadsheet.com/v11/jspreadsheet.css" type="text/css" />

<link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Material+Icons" />
<script src="https://cdn.jsdelivr.net/npm/@jspreadsheet/formula-pro/dist/index.min.js"></script>

<div id="spreadsheet"></div>

<script>
// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('MDRhODJkNGI4YmI1NDIzNjVkMTM4MzVlYjM4NjY5NDhlY2Y0NDExOWRiOWZkMjc1ZjY4NTYxNTc0NzIzZTlmZTc3MmMwMTRlNDJjYWYxODk3NTJhNzc1Y2ZjMTQ1Y2M4N2M0YjQ1NDVmNDliYWQ5YmMyNTM1OWQzZDRiNzUxZGMsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXdOekEwTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');

// Set the extensions
jspreadsheet.setExtensions({ formula });

// Create a new spreadsheet
jspreadsheet(document.getElementById('spreadsheet'), {
  worksheets: [{
    data: [
    [
        "Input Value",
        "Gamma Function",
        "Factorial (for integers)"
    ],
    [
        0.5,
        "=GAMMA(A2)",
        "N/A"
    ],
    [
        2.5,
        "=GAMMA(A3)",
        "N/A"
    ],
    [
        4,
        "=GAMMA(A4)",
        "=FACT(A4-1)"
    ],
    [
        5,
        "=GAMMA(A5)",
        "=FACT(A5-1)"
    ]
]
  }]
});
</script>
</html>
import React, { useRef } from "react";
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/react";
import formula from "@jspreadsheet/formula-pro";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";

// Set license
jspreadsheet.setLicense('MDRhODJkNGI4YmI1NDIzNjVkMTM4MzVlYjM4NjY5NDhlY2Y0NDExOWRiOWZkMjc1ZjY4NTYxNTc0NzIzZTlmZTc3MmMwMTRlNDJjYWYxODk3NTJhNzc1Y2ZjMTQ1Y2M4N2M0YjQ1NDVmNDliYWQ5YmMyNTM1OWQzZDRiNzUxZGMsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXdOekEwTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');

// Set the extensions
jspreadsheet.setExtensions({ formula });

export default function App() {
    // Spreadsheet array of worksheets
    const spreadsheet = useRef();

    // Worksheet data
    const data = [
    [
        "Input Value",
        "Gamma Function",
        "Factorial (for integers)"
    ],
    [
        0.5,
        "=GAMMA(A2)",
        "N/A"
    ],
    [
        2.5,
        "=GAMMA(A3)",
        "N/A"
    ],
    [
        4,
        "=GAMMA(A4)",
        "=FACT(A4-1)"
    ],
    [
        5,
        "=GAMMA(A5)",
        "=FACT(A5-1)"
    ]
];

    // Render component
    return (
        <Spreadsheet ref={spreadsheet}>
            <Worksheet data={data} />
        </Spreadsheet>
    );
}
<template>
    <Spreadsheet ref="spreadsheet">
        <Worksheet :data="data" />
    </Spreadsheet>
</template>

<script>
import { Spreadsheet, Worksheet, jspreadsheet } from "@jspreadsheet/vue";
import "jsuites/dist/jsuites.css";
import "jspreadsheet/dist/jspreadsheet.css";
import formula from "@jspreadsheet/formula-pro";

// Set license
jspreadsheet.setLicense('MDRhODJkNGI4YmI1NDIzNjVkMTM4MzVlYjM4NjY5NDhlY2Y0NDExOWRiOWZkMjc1ZjY4NTYxNTc0NzIzZTlmZTc3MmMwMTRlNDJjYWYxODk3NTJhNzc1Y2ZjMTQ1Y2M4N2M0YjQ1NDVmNDliYWQ5YmMyNTM1OWQzZDRiNzUxZGMsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXdOekEwTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');

// Set the extensions
jspreadsheet.setExtensions({ formula });

export default {
    components: {
        Spreadsheet,
        Worksheet,
    },
    data() {
        // Worksheet data
        const data = [
    [
        "Input Value",
        "Gamma Function",
        "Factorial (for integers)"
    ],
    [
        0.5,
        "=GAMMA(A2)",
        "N/A"
    ],
    [
        2.5,
        "=GAMMA(A3)",
        "N/A"
    ],
    [
        4,
        "=GAMMA(A4)",
        "=FACT(A4-1)"
    ],
    [
        5,
        "=GAMMA(A5)",
        "=FACT(A5-1)"
    ]
]

        return {
            data
        };
    }
}
</script>
import { Component, ViewChild, ElementRef } from "@angular/core";
import jspreadsheet from "jspreadsheet";
import * as formula from "@jspreadsheet/formula-pro";

// Set your JSS license key (The following key only works for one day)
jspreadsheet.setLicense('MDRhODJkNGI4YmI1NDIzNjVkMTM4MzVlYjM4NjY5NDhlY2Y0NDExOWRiOWZkMjc1ZjY4NTYxNTc0NzIzZTlmZTc3MmMwMTRlNDJjYWYxODk3NTJhNzc1Y2ZjMTQ1Y2M4N2M0YjQ1NDVmNDliYWQ5YmMyNTM1OWQzZDRiNzUxZGMsZXlKamJHbGxiblJKWkNJNklpSXNJbTVoYldVaU9pSktjM0J5WldGa2MyaGxaWFFpTENKa1lYUmxJam94TnpVM01ETXdOekEwTENKa2IyMWhhVzRpT2xzaWFuTndjbVZoWkhOb1pXVjBMbU52YlNJc0ltTnZaR1Z6WVc1a1ltOTRMbWx2SWl3aWFuTm9aV3hzTG01bGRDSXNJbU56WWk1aGNIQWlMQ0p6ZEdGamEySnNhWFI2TG1sdklpd2lkMlZpWTI5dWRHRnBibVZ5TG1sdklpd2lkMlZpSWl3aWJHOWpZV3hvYjNOMElsMHNJbkJzWVc0aU9pSXpOQ0lzSW5OamIzQmxJanBiSW5ZM0lpd2lkamdpTENKMk9TSXNJbll4TUNJc0luWXhNU0lzSW1Ob1lYSjBjeUlzSW1admNtMXpJaXdpWm05eWJYVnNZU0lzSW5CaGNuTmxjaUlzSW5KbGJtUmxjaUlzSW1OdmJXMWxiblJ6SWl3aWFXMXdiM0owWlhJaUxDSmlZWElpTENKMllXeHBaR0YwYVc5dWN5SXNJbk5sWVhKamFDSXNJbkJ5YVc1MElpd2ljMmhsWlhSeklpd2lZMnhwWlc1MElpd2ljMlZ5ZG1WeUlpd2ljMmhoY0dWeklpd2labTl5YldGMElsMHNJbVJsYlc4aU9uUnlkV1Y5');

// Set the extensions
jspreadsheet.setExtensions({ formula });

@Component({
    standalone: true,
    selector: "app-root",
    template: `<div #spreadsheet></div>`
})
export class AppComponent {
    @ViewChild("spreadsheet") spreadsheet: ElementRef;
    // Worksheets
    worksheets: jspreadsheet.worksheetInstance[];

    // Create a new data grid
    ngAfterViewInit() {
        // Create spreadsheet
        this.worksheets = jspreadsheet(this.spreadsheet.nativeElement, {
            worksheets: [{
                data: [
    [
        "Input Value",
        "Gamma Function",
        "Factorial (for integers)"
    ],
    [
        0.5,
        "=GAMMA(A2)",
        "N/A"
    ],
    [
        2.5,
        "=GAMMA(A3)",
        "N/A"
    ],
    [
        4,
        "=GAMMA(A4)",
        "=FACT(A4-1)"
    ],
    [
        5,
        "=GAMMA(A5)",
        "=FACT(A5-1)"
    ]
]
            }]
        });
    }
}