Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2012

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Binning data points

  • To: mathgroup at smc.vnet.net
  • Subject: [mg125112] Re: Binning data points
  • From: Ray Koopman <koopman at sfu.ca>
  • Date: Wed, 22 Feb 2012 05:30:07 -0500 (EST)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • References: <jhvub4$83n$1@smc.vnet.net>

On Feb 21, 3:14 am, Niles <niels.martin... at gmail.com> wrote:
> Hi
>
> Say I have a data set (x_i, y_i) such as of the form
>
> {
> {4.4077, 8.41282*10^-7},
> {9.39964, 3.3636*10^-6},
> {14.3781,  7.56237*10^-6},
> {19.3462, 0.00001343},
> {24.3073, 0.0000209557},
> ...
>
> }
>
> The first coordinate is time, the second a weight. The sum of the
> weights equal 1, so I am dealing with a probability density function.
> I want to bin all the data points such that data points with their x-
> coordinates within some range delta_x are binned together, and the
> total y-coordinate of that bin should be the sum of all the y's of the
> data points in the respective bin. So basically something like a
> histogram.
>
> How can I do this?
>
> Best regards.
> Niles.

data = {{4.4077,  8.41282/10^7},
        {9.39964, 3.3636/10^6},
        {14.3781, 7.56237/10^6},
        {19.3462, 0.00001343},
        {24.3073, 0.0000209557}};

bb = {0,10,20,30,40}; (* bin boundaries *)

(* This gives the count and total probability for each bin. *)
Flatten[Map[If[# == {}, {0,0}, {Length@#,Tr@#[[All,2]]} ]&,
BinLists[data, {bb}, {{-Infinity,Infinity}}], {2}], 1]

{{2, 4.20488*10^-6},
 {2, 0.0000209924},
 {1, 0.0000209557},
 {0, 0}}



  • Prev by Date: Re: How best to implement a hash table in Mathematica
  • Next by Date: Re: How best to implement a hash table in Mathematica
  • Previous by thread: Binning data points
  • Next by thread: weird issue