값의 확산을 강조하기 위해 분포 변환친애하는 JMP 커뮤니티 여러분,
시스템 정보: W7 Enterprise 64비트, JMP Pro 14.1.0
비닝 범위 내의 값 분포를 강조하는 데 도움이 되도록 데이터 열을 변환하는 데 관심이 있습니다. 원래 데이터는 정수이고 다소 정규 분포를 따르지만(아래 Y3 분포 참조), 더 나은 캡처를 위해 빈 범위의 데이터를 가져와서 분산시키는 방식으로 데이터를 변환하고 싶습니다. Bin 내의 데이터 범위(Y2 분포 참조) 내가 하려는 작업을 설명하는 데 도움이 되는 여러 이미지를 포함하고 있습니다. 이는 링크를 보여주는 인공 이미지이며 원하는 결과를 보여주기 위한 것입니다.
저는 "중앙" 또는 "표준화" 변환을 수행하는 것만큼 쉬운 일은 아니라고 생각합니다. 둘 중 어느 것도 실제로 데이터를 충분히 분산시키지 않기 때문입니다(이미지에서 강조 표시된 부분 참조). Box Cox나 통나무 변형도 마찬가지입니다. 어쩌면 두 번 이상의 변환이 필요한 것일 수도 있습니다.
어떤 제안이라도 대단히 감사하겠습니다.
감사해요!,
DS



Re: 값의 분산을 강조하기 위해 분포를 변환합니다.안녕 @txnelson 그리고 @Dan_Obermiller ,
귀하의 제안은 매우 도움이 되었으며 이것이 제가 가야 할 방향이라고 믿습니다.
그래도 내용을 조금 수정해야 할 수도 있다고 생각합니다. 나는 원본 데이터의 분포를 가장 잘 보존하기 위해 제안한 것처럼 시도하고 수행하되 대신 일반적인 혼합 기능을 사용한다고 생각합니다. 처럼 @txnelson 지적했듯이 저는 기본적으로 내 데이터의 정수 속성을 단계별 CDF로 표시하는 CDF를 가져와 연속 함수로 바꾸려고 합니다.
(분포 플랫폼의 연속 피팅 옵션에서) 정규 3-혼합 피팅의 위치, 분산 및 확률 값을 얻을 수 있으며 이를 정규 혼합 함수에 대한 벡터 입력으로 사용할 수 있지만 이것이 확실하지 않습니다. 적절하다. 예를 들어 원본 데이터를 작업해야 할지, 표준화된 버전을 사용해야 할지, 아니면 중앙 버전을 사용해야 할지 잘 모르겠습니다.모든 버전에서는 최적의 조합인 일반 3 혼합이 생성되지만 분산과 위치가 다릅니다(확률은 모두 동일하므로 그다지 놀라운 것은 아닙니다.
궁극적으로 최종 분포를 가져와서 로지스트 함수에 공급하여 이벤트의 확률을 예/아니요로 얻고 예/아니요 로지스트 함수의 IfMax를 평가할 수 있어야 합니다(내 레벨에는 너무 많은 수준이 있습니다). 데이터에 이익 매트릭스를 할당하는 열).
내 데이터를 분석하기 위한 최선의 접근 방식을 숙고하는 데 도움이 되는 피드백과 입력에 감사드립니다.
DS
Re: 값의 분산을 강조하기 위해 분포를 변환합니다.여러분이 해야 할 일은 JMP의 기능을 사용하여 원하는 디자인의 그래프를 생성하는 것입니다.이를 위해 JSL을 사용합니다.
그리고 그렇습니다. 다음을 사용하여 주어진 분포의 확률을 얻을 수 있습니다. 관심 있는 분포에 대한 Normal Distribution() 함수 또는 xxx Distribution() 함수.다음은 정규 분포() 함수의 예입니다.
Names Default To Here( 1 );
New Window( "Example: Normal Distribution",
y = Graph Box(
Y Scale( 0, 1 ),
X Scale( -4, 4 ),
XName( "q" ),
Pen Color( "red" );
Y Function( Normal Distribution( q ), q );
)
);
Re: 값의 분산을 강조하기 위해 분포를 변환합니다.나는 당신이 하고 싶은 일을 하는 데 있어 "최선의" 방법은 없다고 생각합니다. 가변성을 *추가*하고 있으므로 몇 가지 가정을 해야 합니다. 예를 들어 값이 65라고 가정합니다. 우리는 65가 "정확하다"고 가정해야 하지만 측정 오류(또는 반올림 보고 등)로 인해 더 높은 정밀도를 사용할 수 없습니다. 이를 달성하는 한 가지 방법은 평균이 0이고 표준 편차가 약 0.33인 임의 정규 변수의 열을 만드는 것입니다. 이제 이 난수 열을 정수 값에 추가하세요. 그러면 정수가 연속 스케일로 "변환"됩니다. 3*.33은 1이므로 표준편차 0.33을 사용했습니다. 따라서 대략 -1과 +1 사이의 숫자를 더해야 합니다. 따라서 여전히 정수 값에 합리적으로 가까워야 합니다.
개념 증명으로 X라는 100개의 정수 열을 만들었습니다. RanNor 열을 임의의 일반 숫자 집합으로 만들었습니다. 마지막으로 NewX는 단순히 X + RanNor입니다. 결과는 다음과 같습니다.

NewX는 X와 매우 유사한 모양을 가지고 있지만 원본 데이터의 통계를 크게 변경하지 않고도 실제로 "추가" 변동성이 있음을 통계를 통해 확인할 수 있습니다.
이것이 당신이 찾고 있는 것인가요??
히스토그램의 목적은 데이터를 변경하는 것이지만 데이터가 전달하는 메시지를 변경하는 것이 아니기 때문에 유사하게 보여야 한다는 점을 덧붙여야 합니다. 원래 게시물에서 원하는 대로 더 많은 막대를 표시하려면 TXNelson이 제안한 대로 빈 너비를 변경해야 합니다. 그러면 각 정수 값 주변의 확산을 볼 수 있습니다.
Re: 값의 분산을 강조하기 위해 분포를 변환합니다.안녕 @txnelson ,
의견을 보내 주셔서 감사합니다. 네, 조사해 봤지만 실제로 제가 원하는 것은 아닙니다.
제가 해야 할 일은 실제로 데이터를 변환하는 것인데, 이를 수행하는 가장 좋은 방법이 무엇인지 잘 모르겠습니다. 데이터 변환의 "표준" 옵션을 시도하면 결과 분포가 더 넓은 범위에 걸쳐 데이터를 분산시키지 않습니다.
예를 들어, 제가 게시한 마지막 배포 이미지 세트에서 강조 표시된 빈에는 해당 빈 내에 3개의 서로 다른 정수 값(65, 66, 67)만 포함되어 있습니다. [보기 어렵습니다.] 하지만 제가 하고 싶은 것은 0에서 10까지 연속적인 분포를 갖도록 변환하는 것입니다. 로그(ln) 함수를 사용하여 데이터를 변환하는 경우 정수를 연속 분포로 변환하지 않고 세 개의 정수를 정수가 아닌 세 개의 새로운 유리수로 비닝하는 것뿐입니다.
제가 하고 싶은 것은 정수(예: 66의 모든 값)를 연속 분포로 변환하는 것이지만, 이 작업을 27에서 90 범위에 걸쳐 있는 전체 정수 세트에 대해 수행하는 것입니다. 정수를 확률로 변환하는 방법이 있나요?
피드백과 도움을 주셔서 감사합니다!
DS
Re: 값의 분산을 강조하기 위해 분포를 변환합니다.히스토그램에서 데이터의 특정 범위를 보고 비닝 정밀도 수준을 변경하려면 대화형으로 축 배율을 늘린 다음 손 도구를 사용하여 빈 크기를 변경하면 쉽게 수행할 수 있습니다.
이것이 당신이해야 할 일입니까?
