Re: simple question
- To: mathgroup at smc.vnet.net
- Subject: [mg105233] Re: simple question
- From: "Sjoerd C. de Vries" <sjoerd.c.devries at gmail.com>
- Date: Wed, 25 Nov 2009 02:32:05 -0500 (EST)
- References: <hegf08$1g1$1@smc.vnet.net>
Hi Fransisco,
It can be done rather easy using Gather:
In[31]:= myGather[list_List, places_List] :=
Gather[list, (#1[[places]] == #2[[places]]) &]
In[32]:= myGather[ejemplo1, {4, 5}]
Out[32]= {{{1, 0, 2, 2, 0}}, {{0, 1, 1, 1, 2}, {2, 1, 1, 1, 2}}, {{2,
0, 0, 1, 1}, {2, 2, 0, 1, 1}}, {{1, 1, 0, 2, 2}}, {{1, 0, 2, 0,
1}, {0, 1, 1, 0, 1}}}
In[33]:= myGather[ejemplo1, {1, 4, 5}]
Out[33]= {{{1, 0, 2, 2, 0}}, {{0, 1, 1, 1, 2}}, {{2, 0, 0, 1, 1}, {2,
2, 0, 1, 1}}, {{1, 1, 0, 2, 2}}, {{1, 0, 2, 0, 1}}, {{2, 1, 1, 1,
2}}, {{0, 1, 1, 0, 1}}}
In[34]:= myGather[ejemplo1, {1}]
Out[34]= {{{1, 0, 2, 2, 0}, {1, 1, 0, 2, 2}, {1, 0, 2, 0, 1}}, {{0, 1,
1, 1, 2}, {0, 1, 1, 0, 1}}, {{2, 0, 0, 1, 1}, {2, 2, 0, 1, 1}, {2,
1, 1, 1, 2}}}
Cheers -- Sjoerd
On Nov 24, 1:11 pm, Francisco Gutierrez <fgutiers2... at yahoo.com>
wrote:
> Dear List:
> I have the following list:
> ejemplo1={{1,0,2,2,0},{0,1,1,1,2},{2,0,0,1,1},{1,1,0,2,2},{1,0,2,0,1},{2,2,0,1,1},{2,1,1,1,2},{0,1,1,0,1}};
> I want to group it, so that the sublists of ejemplo1 that have identical values at positions 4 and 5 are gathered together. So I did the following code:
> Split[ Sort[ejemplo1,#1[[4]]>=#2[[4]] && #1[[5]]>=#2[[5]] &],Take[#1, {4,5}]==Take[#2,{4,5}]&]
>
> Works! The output in effect is:
> {{{1,1,0,2,2}},{{0,1,1,1,2},{2,1,1,1,2}},{{2,0,0,1,1},{2,2,0,1,1}},{{1,0,2,0,1},{0,1,1,0,1}},{{1,0,2,2,0}}},
> precisely what I wanted.
>
> Now, how can I create a function for the general case (instead of fixed positions 4 and 5, an arbitrary number of positions that act as "gathering parameter")?
> Fg
>
> --- On Mon, 11/23/09, Petri T=F6tterman <petri.totter... at hanken.fi> wrote:
>
> From: Petri T=F6tterman <petri.totter... at hanken.fi>
> Subject: ML estimators for Box-Cox Extreme Value distribution
> Date: Monday, November 23, 2009, 6:53 AM
>
> Dear all,
>
> I have a set of data, and I want to fit a distribution on this data. I
> am particularily interested in the Box-Cox General Extreme Value
> distribution, for which I have the CDF and PDF:
> ---
> BoxCoxGEVDistribution /:
>
> CDF[BoxCoxGEVDistribution[\[Mu]_, \[Sigma]_, \[Xi]_, \[Phi]_], x_]:=
> 1 + (((Exp[-(1 + \[Xi] ( (x - \
> \[Mu])/\[Sigma]))^(-1/\[Xi])])^\[Phi]) - 1)/\[Phi];
>
> BoxCoxGEVDistribution /:
>
> PDF[BoxCoxGEVDistribution[\[Mu]_, \[Sigma]_, \[Xi]_, \[Phi]_], x_] =
> D[CDF[BoxCoxGEVDistribution[\[Mu], \[Sigma], \[Xi], \[Phi]], x],
> x];
> ---
>
> I do also have a Log likelihood function from (Bali, 2007):
>
> ---
> LLdBoxCoxGEV[\[Mu]_, \[Sigma]_, \[Xi]_, \[Phi]_, M_] :=
> Module[{k = Length[M]}, -k Log[\[Sigma]] -
> k ((1 + \[Xi])/\[Xi]) Sum[
> Log[1 + \[Xi] ((M[[i]] - \[Mu])/\[Sigma])], {i, 1, k}] -
> k \[Phi] Sum[(1 + \[Xi] ((M[[i]] - \[Mu])/\[Sigma]))^(-(
> 1/\[Xi])), {i, 1, k}] ];
> ---
>
> Obviously, \[Mu]_, \[Sigma]_, \[Xi]_, \[Phi]_ are parameters which I
> need to estimate, and M is a list of values from the dataset,
> exceeding a predefined limit.
>
> I would be grateful for advice, how should I continue to find the
> Maximum Likelihood estimators for this distribution, using Mathematica?
>
> Best regards,
> /petri