Show / Hide Table of Contents

Class Distribution

Distribution contains summary statistics for a population of values. It optionally contains a histogram representing the distribution of those values across a set of buckets.

The summary statistics are the count, mean, sum of the squared deviation from the mean, the minimum, and the maximum of the set of population of values. The histogram is based on a sequence of buckets and gives a count of values that fall into each bucket. The boundaries of the buckets are given either explicitly or by formulas for buckets of fixed or exponentially increasing widths.

Although it is not forbidden, it is generally a bad idea to include non-finite values (infinities or NaNs) in the population of values, as this will render the mean and sum_of_squared_deviation fields meaningless.

Inheritance
System.Object
Distribution
Implements
IMessage<Distribution>
IMessage
System.IEquatable<Distribution>
IDeepCloneable<Distribution>
Inherited Members
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetType()
System.Object.MemberwiseClone()
Namespace: Google.Api
Assembly: Google.Api.CommonProtos.dll
Syntax
public sealed class Distribution : IMessage<Distribution>, IMessage, IEquatable<Distribution>, IDeepCloneable<Distribution>

Constructors

Distribution()

Declaration
public Distribution()

Distribution(Distribution)

Declaration
public Distribution(Distribution other)
Parameters
Type Name Description
Distribution other

Fields

BucketCountsFieldNumber

Field number for the "bucket_counts" field.

Declaration
public const int BucketCountsFieldNumber = 7
Field Value
Type Description
System.Int32

BucketOptionsFieldNumber

Field number for the "bucket_options" field.

Declaration
public const int BucketOptionsFieldNumber = 6
Field Value
Type Description
System.Int32

CountFieldNumber

Field number for the "count" field.

Declaration
public const int CountFieldNumber = 1
Field Value
Type Description
System.Int32

ExemplarsFieldNumber

Field number for the "exemplars" field.

Declaration
public const int ExemplarsFieldNumber = 10
Field Value
Type Description
System.Int32

MeanFieldNumber

Field number for the "mean" field.

Declaration
public const int MeanFieldNumber = 2
Field Value
Type Description
System.Int32

RangeFieldNumber

Field number for the "range" field.

Declaration
public const int RangeFieldNumber = 4
Field Value
Type Description
System.Int32

SumOfSquaredDeviationFieldNumber

Field number for the "sum_of_squared_deviation" field.

Declaration
public const int SumOfSquaredDeviationFieldNumber = 3
Field Value
Type Description
System.Int32

Properties

BucketCounts

The number of values in each bucket of the histogram, as described in bucket_options. If the distribution does not have a histogram, then omit this field. If there is a histogram, then the sum of the values in bucket_counts must equal the value in the count field of the distribution.

If present, bucket_counts should contain N values, where N is the number of buckets specified in bucket_options. If you supply fewer than N values, the remaining values are assumed to be 0.

The order of the values in bucket_counts follows the bucket numbering schemes described for the three bucket types. The first value must be the count for the underflow bucket (number 0). The next N-2 values are the counts for the finite buckets (number 1 through N-2). The N'th value in bucket_counts is the count for the overflow bucket (number N-1).

Declaration
public RepeatedField<long> BucketCounts { get; }
Property Value
Type Description
RepeatedField<System.Int64>

BucketOptions

Defines the histogram bucket boundaries. If the distribution does not contain a histogram, then omit this field.

Declaration
public Distribution.Types.BucketOptions BucketOptions { get; set; }
Property Value
Type Description
Distribution.Types.BucketOptions

Count

The number of values in the population. Must be non-negative. This value must equal the sum of the values in bucket_counts if a histogram is provided.

Declaration
public long Count { get; set; }
Property Value
Type Description
System.Int64

Descriptor

Declaration
public static MessageDescriptor Descriptor { get; }
Property Value
Type Description
MessageDescriptor

Exemplars

Must be in increasing order of value field.

Declaration
public RepeatedField<Distribution.Types.Exemplar> Exemplars { get; }
Property Value
Type Description
RepeatedField<Distribution.Types.Exemplar>

Mean

The arithmetic mean of the values in the population. If count is zero then this field must be zero.

Declaration
public double Mean { get; set; }
Property Value
Type Description
System.Double

Parser

Declaration
public static MessageParser<Distribution> Parser { get; }
Property Value
Type Description
MessageParser<Distribution>

Range

If specified, contains the range of the population values. The field must not be present if the count is zero.

Declaration
public Distribution.Types.Range Range { get; set; }
Property Value
Type Description
Distribution.Types.Range

SumOfSquaredDeviation

The sum of squared deviations from the mean of the values in the population. For values x_i this is:

Sum[i=1..n]((x_i - mean)^2)

Knuth, "The Art of Computer Programming", Vol. 2, page 323, 3rd edition describes Welford's method for accumulating this sum in one pass.

If count is zero then this field must be zero.

Declaration
public double SumOfSquaredDeviation { get; set; }
Property Value
Type Description
System.Double

Methods

CalculateSize()

Declaration
public int CalculateSize()
Returns
Type Description
System.Int32
Implements
IMessage.CalculateSize()

Clone()

Declaration
public Distribution Clone()
Returns
Type Description
Distribution
Implements
IDeepCloneable<T>.Clone()

Equals(Distribution)

Declaration
public bool Equals(Distribution other)
Parameters
Type Name Description
Distribution other
Returns
Type Description
System.Boolean
Implements
System.IEquatable<T>.Equals(T)

Equals(Object)

Declaration
public override bool Equals(object other)
Parameters
Type Name Description
System.Object other
Returns
Type Description
System.Boolean
Overrides
System.Object.Equals(System.Object)

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
System.Int32
Overrides
System.Object.GetHashCode()

MergeFrom(Distribution)

Declaration
public void MergeFrom(Distribution other)
Parameters
Type Name Description
Distribution other
Implements
IMessage<T>.MergeFrom(T)

MergeFrom(CodedInputStream)

Declaration
public void MergeFrom(CodedInputStream input)
Parameters
Type Name Description
CodedInputStream input
Implements
IMessage.MergeFrom(CodedInputStream)

ToString()

Declaration
public override string ToString()
Returns
Type Description
System.String
Overrides
System.Object.ToString()

WriteTo(CodedOutputStream)

Declaration
public void WriteTo(CodedOutputStream output)
Parameters
Type Name Description
CodedOutputStream output
Implements
IMessage.WriteTo(CodedOutputStream)

Explicit Interface Implementations

IMessage.Descriptor

Declaration
MessageDescriptor IMessage.Descriptor { get; }
Returns
Type Description
MessageDescriptor
Implements
IMessage.Descriptor
Back to top