Uncorrelated random vectors

classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Uncorrelated random vectors

Stein, Luba (AIM SE)
Hello,

is it possible to create two uncorrelated random vectors for a given distribution.

In fact, I would like to have something like the function "rnorm" or "rlogis" with the extra property that they are uncorrelated.

Thanks for your help,
Luba




        [[alternative HTML version deleted]]

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors

Stein, Luba (AIM SE)
Thank you for your help!
But is it possible to produe two vectors x and y with a given length such that there correlation is zero.

For me ist not enough just to simulate two vectors with there correlation.

Thank you,
Luba




-----Urspr?ngliche Nachricht-----
Von: ONKELINX, Thierry [mailto:[hidden email]]
Gesendet: Dienstag, 7. Juli 2009 15:51
An: Stein, Luba (AIM SE); [hidden email]
Betreff: RE: [R] Uncorrelated random vectors

cor.test(rnorm(10000), rnorm(10000))


------------------------------------------------------------------------
----
ir. Thierry Onkelinx
Instituut voor natuur- en bosonderzoek / Research Institute for Nature
and Forest
Cel biometrie, methodologie en kwaliteitszorg / Section biometrics,
methodology and quality assurance
Gaverstraat 4
9500 Geraardsbergen
Belgium
tel. + 32 54/436 185
[hidden email]
www.inbo.be

To call in the statistician after the experiment is done may be no more
than asking him to perform a post-mortem examination: he may be able to
say what the experiment died of.
~ Sir Ronald Aylmer Fisher

The plural of anecdote is not data.
~ Roger Brinner

The combination of some data and an aching desire for an answer does not
ensure that a reasonable answer can be extracted from a given body of
data.
~ John Tukey

-----Oorspronkelijk bericht-----
Van: [hidden email] [mailto:[hidden email]]
Namens Stein, Luba (AIM SE)
Verzonden: dinsdag 7 juli 2009 15:46
Aan: [hidden email]
Onderwerp: [R] Uncorrelated random vectors

Hello,

is it possible to create two uncorrelated random vectors for a given
distribution.

In fact, I would like to have something like the function "rnorm" or
"rlogis" with the extra property that they are uncorrelated.

Thanks for your help,
Luba




        [[alternative HTML version deleted]]

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Dit bericht en eventuele bijlagen geven enkel de visie van de schrijver weer
en binden het INBO onder geen enkel beding, zolang dit bericht niet bevestigd is
door een geldig ondertekend document. The views expressed in  this message
and any annex are purely those of the writer and may not be regarded as stating
an official position of INBO, as long as the message is not confirmed by a duly
signed document.

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors

Andrew Dolman
You could use the mvtnorm package to generate correlated vectors of random
normal deviates where the nominal correlation is 0.

library(mvtnorm)
rho <- 0.0
Cor <- array(c(1, rho, rho, 1), dim=c(2,2))
Y <- rmvnorm(1000, sigma=Cor)

plot(Y)
cor(Y)
cor.test(Y[,1],Y[,2])


Any given random set will have some small amount of random correlation.


You can then transform the distribution of the normal random deviates to
another distribution using pnorm, qnorm and their equivalents for the other
dist.


Andy.




[hidden email]


2009/7/7 Stein, Luba (AIM SE) <[hidden email]>

> Thank you for your help!
> But is it possible to produe two vectors x and y with a given length such
> that there correlation is zero.
>
> For me ist not enough just to simulate two vectors with there correlation.
>
> Thank you,
> Luba
>
>
>
>
> -----Urspr?ngliche Nachricht-----
> Von: ONKELINX, Thierry [mailto:[hidden email]]
> Gesendet: Dienstag, 7. Juli 2009 15:51
> An: Stein, Luba (AIM SE); [hidden email]
> Betreff: RE: [R] Uncorrelated random vectors
>
> cor.test(rnorm(10000), rnorm(10000))
>
>
> ------------------------------------------------------------------------
> ----
> ir. Thierry Onkelinx
> Instituut voor natuur- en bosonderzoek / Research Institute for Nature
> and Forest
> Cel biometrie, methodologie en kwaliteitszorg / Section biometrics,
> methodology and quality assurance
> Gaverstraat 4
> 9500 Geraardsbergen
> Belgium
> tel. + 32 54/436 185
> [hidden email]
> www.inbo.be
>
> To call in the statistician after the experiment is done may be no more
> than asking him to perform a post-mortem examination: he may be able to
> say what the experiment died of.
> ~ Sir Ronald Aylmer Fisher
>
> The plural of anecdote is not data.
> ~ Roger Brinner
>
> The combination of some data and an aching desire for an answer does not
> ensure that a reasonable answer can be extracted from a given body of
> data.
> ~ John Tukey
>
> -----Oorspronkelijk bericht-----
> Van: [hidden email] [mailto:[hidden email]]
> Namens Stein, Luba (AIM SE)
> Verzonden: dinsdag 7 juli 2009 15:46
> Aan: [hidden email]
> Onderwerp: [R] Uncorrelated random vectors
>
> Hello,
>
> is it possible to create two uncorrelated random vectors for a given
> distribution.
>
> In fact, I would like to have something like the function "rnorm" or
> "rlogis" with the extra property that they are uncorrelated.
>
> Thanks for your help,
> Luba
>
>
>
>
>        [[alternative HTML version deleted]]
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
> Dit bericht en eventuele bijlagen geven enkel de visie van de schrijver
> weer
> en binden het INBO onder geen enkel beding, zolang dit bericht niet
> bevestigd is
> door een geldig ondertekend document. The views expressed in  this message
> and any annex are purely those of the writer and may not be regarded as
> stating
> an official position of INBO, as long as the message is not confirmed by a
> duly
> signed document.
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

        [[alternative HTML version deleted]]

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors

Ted.Harding-2
In reply to this post by Stein, Luba (AIM SE)
Be careful to be clear what you are referring to when you say
"correlation is zero".

The commands
  x <- rnorm(100)
  y <- rnorm(100)
will produce two vectors of given length (100) which (to within the
effectively ignorable limitations of the ransom number generator)
will have been produced independently. Hence the *theoretical*
correlation is zero. If that is what you meant, then it is already
answered. When you compute cor(x,y), however, the answer will in
general be non-zero (though only rarely significantly so). This is
because the numbers produced by the second independent run of rnrom()
have an almost zero probability of producing two vectors for which
the value of cor(x,y) = 0.

However, possibly you mean that you want two vectors for which the
result of cor(x,y) = 0. One way to achieve this is along the following
lines:

  set.seed(54321)
  x  <- rnorm(100)
  y0 <- rnorm(100)
  My <- mean(y0)
  Sy <- sd(y0)
  y1 <- lm(y0 ~ x)$res ; y1 <- y1/sd(y1)
  y  <- My + y1*Sy

  mean(y0)
  # [1] 0.04497584
  mean(y)
  # [1] 0.04497584
  sd(y0)
  # [1] 0.848231
  sd(y)
  # [1] 0.848231

  cor(x,y0)
  # [1] 0.05556468
  cor(x,y)
  # [1] 6.451072e-18 [effectively 0, to within rounding error]

In this case, however, note that
[A]: The 100 elements of y, given the values of x, are NOT independent
of each other, since they satisfy the linear constraint

  x[1]*y[1] + x[2]*y[2] + ... + x[100]*y[100]
      - (sum(x))*[y[1] + y[2] + ... + y[100])/100 = 0

and therefore can vary only in 99 dimensions, not 100. Nor are they
independent of the values of x (even though the numerical correlation
is 0).
On the other hand, the values of y0 are independent of the values
of x, and of each other.

You need to be very clear why you want to have two vectors x,y
such that cor(x,y) = 0, since otherwise you are at risk of carrying
out an invalid analysis.

Hoping this helps,
Ted.



On 07-Jul-09 14:26:02, Stein, Luba (AIM SE) wrote:

> Thank you for your help!
> But is it possible to produe two vectors x and y with a given length
> such that there correlation is zero.
>
> For me ist not enough just to simulate two vectors with there
> correlation.
>
> Thank you,
> Luba
>
>
>
>
> -----Urspr?ngliche Nachricht-----
> Von: ONKELINX, Thierry [mailto:[hidden email]]
> Gesendet: Dienstag, 7. Juli 2009 15:51
> An: Stein, Luba (AIM SE); [hidden email]
> Betreff: RE: [R] Uncorrelated random vectors
>
> cor.test(rnorm(10000), rnorm(10000))
>
>
> ------------------------------------------------------------------------
> ----
> ir. Thierry Onkelinx
> ~ Roger Brinner
>
> The combination of some data and an aching desire for an answer does
> not
> ensure that a reasonable answer can be extracted from a given body of
> data.
> ~ John Tukey
>
> -----Oorspronkelijk bericht-----
> Van: [hidden email] [mailto:[hidden email]]
> Namens Stein, Luba (AIM SE)
> Verzonden: dinsdag 7 juli 2009 15:46
> Aan: [hidden email]
> Onderwerp: [R] Uncorrelated random vectors
>
> Hello,
>
> is it possible to create two uncorrelated random vectors for a given
> distribution.
>
> In fact, I would like to have something like the function "rnorm" or
> "rlogis" with the extra property that they are uncorrelated.
>
> Thanks for your help,
> Luba

--------------------------------------------------------------------
E-Mail: (Ted Harding) <[hidden email]>
Fax-to-email: +44 (0)870 094 0861
Date: 07-Jul-09                                       Time: 16:48:06
------------------------------ XFMail ------------------------------

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors

Greg Snow-2
In reply to this post by Stein, Luba (AIM SE)
Here are some examples that may get you started (note that there is no guarantee that a variable follows a given distribution after it has been adjusted to have 0 correlation with another variable):

library(MASS)
tmp <- mvrnorm(25, c(0,0), diag(2), empirical=TRUE)
zapsmall(cor(tmp))

tmp2 <- exp(tmp)
zapsmall(cor(tmp2))

x <- rexp(100, 3)
y <- rexp(100, 2)
par(mfrow=c(2,1))
plot(x,y)
tmp3 <- cbind(x,y)
zapsmall(cor(tmp3))



tmp4 <- tmp3 %*% solve(chol(var(tmp3)))
zapsmall(cor(tmp4))
plot(tmp4)
hist(tmp4[,1])
hist(tmp4[,2])
plot(tmp4[,1], x)
plot(tmp4[,2], y)


Hope this helps,

--
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
[hidden email]
801.408.8111


> -----Original Message-----
> From: [hidden email] [mailto:r-help-bounces@r-
> project.org] On Behalf Of Stein, Luba (AIM SE)
> Sent: Tuesday, July 07, 2009 8:26 AM
> To: ONKELINX, Thierry; [hidden email]
> Subject: Re: [R] Uncorrelated random vectors
>
> Thank you for your help!
> But is it possible to produe two vectors x and y with a given length
> such that there correlation is zero.
>
> For me ist not enough just to simulate two vectors with there
> correlation.
>
> Thank you,
> Luba
>
>
>
>
> -----Urspr?ngliche Nachricht-----
> Von: ONKELINX, Thierry [mailto:[hidden email]]
> Gesendet: Dienstag, 7. Juli 2009 15:51
> An: Stein, Luba (AIM SE); [hidden email]
> Betreff: RE: [R] Uncorrelated random vectors
>
> cor.test(rnorm(10000), rnorm(10000))
>
>
> -----------------------------------------------------------------------
> -
> ----
> ir. Thierry Onkelinx
> Instituut voor natuur- en bosonderzoek / Research Institute for Nature
> and Forest
> Cel biometrie, methodologie en kwaliteitszorg / Section biometrics,
> methodology and quality assurance
> Gaverstraat 4
> 9500 Geraardsbergen
> Belgium
> tel. + 32 54/436 185
> [hidden email]
> www.inbo.be
>
> To call in the statistician after the experiment is done may be no more
> than asking him to perform a post-mortem examination: he may be able to
> say what the experiment died of.
> ~ Sir Ronald Aylmer Fisher
>
> The plural of anecdote is not data.
> ~ Roger Brinner
>
> The combination of some data and an aching desire for an answer does
> not
> ensure that a reasonable answer can be extracted from a given body of
> data.
> ~ John Tukey
>
> -----Oorspronkelijk bericht-----
> Van: [hidden email] [mailto:[hidden email]]
> Namens Stein, Luba (AIM SE)
> Verzonden: dinsdag 7 juli 2009 15:46
> Aan: [hidden email]
> Onderwerp: [R] Uncorrelated random vectors
>
> Hello,
>
> is it possible to create two uncorrelated random vectors for a given
> distribution.
>
> In fact, I would like to have something like the function "rnorm" or
> "rlogis" with the extra property that they are uncorrelated.
>
> Thanks for your help,
> Luba
>
>
>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
> Dit bericht en eventuele bijlagen geven enkel de visie van de schrijver
> weer
> en binden het INBO onder geen enkel beding, zolang dit bericht niet
> bevestigd is
> door een geldig ondertekend document. The views expressed in  this
> message
> and any annex are purely those of the writer and may not be regarded as
> stating
> an official position of INBO, as long as the message is not confirmed
> by a duly
> signed document.
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors

Giovanni Petris
In reply to this post by Stein, Luba (AIM SE)

Here is one way:

> x <- rnorm(100)
> y <- rnorm(100)
> z <- residuals(lm(y ~ x))
> cor(x, z)
[1] 3.610290e-17

Best,
Giovanni

> Date: Tue, 07 Jul 2009 16:26:02 +0200
> From: "Stein, Luba (AIM SE)" <[hidden email]>
> Sender: [hidden email]
> Accept-Language: en-US, de-DE
> Precedence: list
> Thread-topic: [R] Uncorrelated random vectors
> Thread-index: Acn/CUJmE2gw3SggRTqBPK7cXE4i5QAAMBVwAAE0SfA=
> acceptlanguage: en-US, de-DE
>
> Thank you for your help!
> But is it possible to produe two vectors x and y with a given length such that there correlation is zero.
>
> For me ist not enough just to simulate two vectors with there correlation.
>
> Thank you,
> Luba
>
>
>
>
> -----Urspr?ngliche Nachricht-----
> Von: ONKELINX, Thierry [mailto:[hidden email]]
> Gesendet: Dienstag, 7. Juli 2009 15:51
> An: Stein, Luba (AIM SE); [hidden email]
> Betreff: RE: [R] Uncorrelated random vectors
>
> cor.test(rnorm(10000), rnorm(10000))
>
>
> ------------------------------------------------------------------------
> ----
> ir. Thierry Onkelinx
> Instituut voor natuur- en bosonderzoek / Research Institute for Nature
> and Forest
> Cel biometrie, methodologie en kwaliteitszorg / Section biometrics,
> methodology and quality assurance
> Gaverstraat 4
> 9500 Geraardsbergen
> Belgium
> tel. + 32 54/436 185
> [hidden email]
> www.inbo.be
>
> To call in the statistician after the experiment is done may be no more
> than asking him to perform a post-mortem examination: he may be able to
> say what the experiment died of.
> ~ Sir Ronald Aylmer Fisher
>
> The plural of anecdote is not data.
> ~ Roger Brinner
>
> The combination of some data and an aching desire for an answer does not
> ensure that a reasonable answer can be extracted from a given body of
> data.
> ~ John Tukey
>
> -----Oorspronkelijk bericht-----
> Van: [hidden email] [mailto:[hidden email]]
> Namens Stein, Luba (AIM SE)
> Verzonden: dinsdag 7 juli 2009 15:46
> Aan: [hidden email]
> Onderwerp: [R] Uncorrelated random vectors
>
> Hello,
>
> is it possible to create two uncorrelated random vectors for a given
> distribution.
>
> In fact, I would like to have something like the function "rnorm" or
> "rlogis" with the extra property that they are uncorrelated.
>
> Thanks for your help,
> Luba
>
>
>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
> Dit bericht en eventuele bijlagen geven enkel de visie van de schrijver weer
> en binden het INBO onder geen enkel beding, zolang dit bericht niet bevestigd is
> door een geldig ondertekend document. The views expressed in  this message
> and any annex are purely those of the writer and may not be regarded as stating
> an official position of INBO, as long as the message is not confirmed by a duly
> signed document.
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>
>

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors

Moshe Olshansky-2
In reply to this post by Stein, Luba (AIM SE)

As mentioned by somebody before, there is no problem for the normal case - use mvrnorm function from MASS package with any mu and make Sigma be any diagonal matrix (with strictly positive diagonal). Note that even though all the correlations are 0, the SAMPLE correlations won't be 0. If you want to create a set of vectors whose SAMPLE correlations are 0 you will have to use a variant of Gramm-Schmidt.
I do not know whether a variant of mvrnorm exists for logistic distribution (my guess is that it does not).

--- On Tue, 7/7/09, Stein, Luba (AIM SE) <[hidden email]> wrote:

> From: Stein, Luba (AIM SE) <[hidden email]>
> Subject: [R] Uncorrelated random vectors
> To: "[hidden email]" <[hidden email]>
> Received: Tuesday, 7 July, 2009, 11:45 PM
> Hello,
>
> is it possible to create two uncorrelated random vectors
> for a given distribution.
>
> In fact, I would like to have something like the function
> "rnorm" or "rlogis" with the extra property that they are
> uncorrelated.
>
> Thanks for your help,
> Luba
>
>
>
>
>     [[alternative HTML version deleted]]
>
> ______________________________________________
> [hidden email]
> mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained,
> reproducible code.
>

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors - Thank you!

Stein, Luba (AIM SE)
Thanks to all for the answers! I solved my problem now by sufficient iteration!

Have a nice day!
Luba

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.
Reply | Threaded
Open this post in threaded view
|

Re: Uncorrelated random vectors

Greg Snow-2
In reply to this post by Moshe Olshansky-2
The mvrnorm function in the MASS package has an argument to force the generated data to have the exact mean/variance structure as specified which when used with a diagonal variance matrix will generate data that has a 0 (within round off error) correlation in the data.  No post processing by Gramm-Schmidt or other methods needed.  The author(s) of the function cleverly hid this feature by placing the information on the help page for the function.

--
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
[hidden email]
801.408.8111

> -----Original Message-----
> From: [hidden email] [mailto:r-help-bounces@r-
> project.org] On Behalf Of Moshe Olshansky
> Sent: Tuesday, July 07, 2009 9:10 PM
> To: [hidden email]; Luba (AIM SE)Stein
> Subject: Re: [R] Uncorrelated random vectors
>
>
> As mentioned by somebody before, there is no problem for the normal
> case - use mvrnorm function from MASS package with any mu and make
> Sigma be any diagonal matrix (with strictly positive diagonal). Note
> that even though all the correlations are 0, the SAMPLE correlations
> won't be 0. If you want to create a set of vectors whose SAMPLE
> correlations are 0 you will have to use a variant of Gramm-Schmidt.
> I do not know whether a variant of mvrnorm exists for logistic
> distribution (my guess is that it does not).
>
> --- On Tue, 7/7/09, Stein, Luba (AIM SE) <[hidden email]>
> wrote:
>
> > From: Stein, Luba (AIM SE) <[hidden email]>
> > Subject: [R] Uncorrelated random vectors
> > To: "[hidden email]" <[hidden email]>
> > Received: Tuesday, 7 July, 2009, 11:45 PM
> > Hello,
> >
> > is it possible to create two uncorrelated random vectors
> > for a given distribution.
> >
> > In fact, I would like to have something like the function
> > "rnorm" or "rlogis" with the extra property that they are
> > uncorrelated.
> >
> > Thanks for your help,
> > Luba
> >
> >
> >
> >
> >     [[alternative HTML version deleted]]
> >
> > ______________________________________________
> > [hidden email]
> > mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-help
> > PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> > and provide commented, minimal, self-contained,
> > reproducible code.
> >
>
> ______________________________________________
> [hidden email] mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> and provide commented, minimal, self-contained, reproducible code.

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.