<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />열에는 앞에 0이 있는 데이터와 없는 데이터가 있습니다. 새 열을 만들지 않고 선행 0을 제거할 수 있습니까?
안녕하세요, 제니퍼
문제를 해결해주셔서 기쁘고, 기꺼이 도와드리겠습니다! 막히면 주저하지 말고 질문을 게시하세요. 비슷한 질문을 가진 사람들이 많을 가능성이 높습니다!
JMP를 즐겨 사용하시기 바랍니다!
줄리안
안녕하세요, 제니퍼
엄청난! 숫자만 있는 경우 훨씬 쉽게 열 데이터 유형을 숫자로 변경하면 정렬이 자동으로 처리됩니다. 열 데이터 유형을 변경하려면 열을 선택한 다음 열 메뉴 > 열 정보로 이동하세요. 여기서 데이터 유형을 숫자로 변경하고 모델링 유형을 연속형으로 변경합니다.이제 해당 열을 기준으로 정렬하면(데이터 테이블에서 열을 마우스 오른쪽 버튼으로 클릭 > 정렬 또는 테이블 메뉴 > 정렬) JMP가 해당 숫자를 자연스럽게 정렬합니다.
줄리안
신경쓰지 마세요. 제가 알아낸 것 같아요. 나는 그것을 문자에서 숫자로 바꿔야 했는데, 이것이 바로 당신이 나에게 말하려고 했던 것이라고 생각합니다. 죄송합니다. 모든 도움에 다시 한번 감사드립니다!!
공손히,
제니퍼
안녕하세요 줄리안,
열에는 숫자만 포함되어 있지만 데이터가 연속 형식이어야 하는 특정 분석을 수행할 수 있도록 명목 또는 순서 대신 연속 열로 변경할 수 있기를 원합니다.
공손히,
제니퍼
안녕하십니까?
열이 문자 열인 경우 JMP는 말한 대로 데이터를 1, 11, 12, 13, 2, 3 등으로 정렬합니다. 열이 숫자인 경우 JMP는 자연 순서인 1, 2, 3으로 열을 정렬합니다. , 4 등. 열에 문자가 포함되어 있습니까? 그렇다면 숫자로 변경하는 것은 선택 사항이 아니므로 좀 더 창의적인 작업을 수행해야 합니다. 내가 할 일은 데이터 앞에 여러 개의 0을 추가한 다음 결과를 다듬어 총 문자 수를 제한하는 것입니다. 예를 들어, 다음 값이 1a, 2e, 13h, 33f, 201v인 경우 우리가 원하는 것은 001a, 002e, 013h, 033f, 201v가 되도록 앞에 0을 추가하는 것입니다. 이는 앞에 다른 개수의 0(2개, 1개, 없음)을 추가한다는 의미입니다. 일부 조건부 논리를 통해 이를 처리할 수 있지만 필요한 최대 0 수(2)를 모든 데이터 앞에 추가한 다음 "right"라는 문자 함수를 사용하여 가장 오른쪽에 있는 문자를 가져오는 것이 더 쉬울 것입니다. 각 행. 예를 들어, 모든 값(001a, 002e, 0013h, 0033f, 00201v 생성)에 2개의 0을 추가한 다음 각 값에서 가장 오른쪽에 있는 4개 문자만 가져오는 또 다른 수식을 적용한다고 가정해 보겠습니다(원하는 값 001a, 002e 생성). , 013h, 033f, 201v). 마우스와 몇 번의 키 누르기만 하면 JMP의 공식을 통해 이 모든 작업을 수행할 수 있습니다.
1. Cols 메뉴 > New Column으로 이동하여 새 열을 만듭니다.

2. 데이터 유형으로 "문자"를 선택하십시오. 이는 선행 0과 문자를 원하는 경우에 필요합니다(숫자 열은 실제 숫자에 대한 의미가 없고 문자를 저장할 수 없으므로 선행 0을 무시합니다). 이렇게 한 후 확인을 클릭하세요.
3. 새 열을 선택한 다음 열 메뉴 > 수식으로 이동합니다.
4. 수식 편집기입니다. 여기에서 전체 열에 적용할 수식을 정의할 수 있습니다. 우리가 원하는 것은 원래 열의 기존 값 앞에 0(또는 원하는 문자)을 추가하는 수식입니다. "연결"이라는 문자 함수를 사용하여 이를 수행할 수 있습니다. 해당 공식을 설정하는 단계는 다음과 같습니다.
ㅏ. 오른쪽 상단 섹션(기능 그룹 목록)에서 "Character"를 선택한 다음 "Concat"을 선택합니다.

비.이제 수식 편집기에 다음이 표시됩니다.

씨. 두 개의 직사각형을 이 함수의 인수라고 하며 열이나 텍스트로 채워야 합니다. 귀하의 경우 다른 열의 시작 부분에 값을 추가하고 싶으므로 먼저 두 번째 상자를 클릭하여 선택한 다음 왼쪽 상단의 열 목록에서 원래 열을 선택하세요. 다음은 있어야 할 항목입니다(단, 사용자 고유의 열 이름 포함).

디. 제 경우에는 Random ID 컬럼에 글자가 있어서 이미 문자 컬럼으로 설정되어 있습니다. 원래 열이 숫자인 경우 숫자 데이터를 앞에 추가할 문자열로 변환하도록 JMP에 지시해야 합니다. 이렇게 하려면 "문자" 기능 그룹을 다시 선택하고 "문자"를 선택하십시오. 이렇게 하면 공식이 업데이트되고 JMP에 지침이 추가되어 선택한 열의 내용을 문자로 변환합니다.

이자형. 다음으로 우리는 무엇을 앞에 붙일지 결정해야 합니다. 첫 번째 직사각형을 두 번 클릭하면 해당 필드에 대한 편집기가 열립니다. 여기에 우리가 필요로 하는 가장 많은 수의 0을 앞에 추가하려고 합니다. 위에서 사용한 예에서는 앞에 두 개의 0을 추가합니다. (따옴표 포함) "00"을 입력한 다음 Enter 또는 Return 키를 누르십시오.Enter를 클릭하기 전의 모습은 다음과 같습니다.

에프. Return을 클릭하면 JMP는 해당 필드에 대한 편집기를 닫습니다. 이제 이 공식을 적용하면 모든 값 앞에 두 개의 0이 표시됩니다. 그러나 "201v"와 같은 값에는 0이 필요하지 않으며 해당 값 앞에 0을 추가하면 정렬이 작동하지 않습니다. 따라서 이 수식에 함수를 하나 더 적용하여 가장 오른쪽 4자만 유지하겠습니다. 이렇게 하려면 작성한 수식의 가장 바깥쪽 상자를 클릭하여 전체 수식을 선택합니다. 이렇게 하면 상자가 아래와 같이 강조 표시됩니다.

g. 이제 캐릭터 기능 그룹에서 캐릭터 기능을 하나 더 적용하겠습니다. 문자 그룹을 선택하고 "right"를 선택합니다. 이렇게 하면 right() 함수가 이 전체 수식에 적용되고 오른쪽에서 추출하려는 문자 수를 입력할 수 있는 공간이 제공됩니다. 이 경우 "n" 필드를 두 번 클릭하고 4(따옴표 없이)를 입력하여 4를 입력하겠습니다. Return을 클릭하면 다음과 같은 결과가 나타납니다.

시간. 수식을 실행할 준비가 되었습니다. 확인 버튼을 클릭하면 새 열이 원래 값으로 채워지지만 앞에는 필요한 만큼 0이 추가되는 것을 볼 수 있습니다.귀하의 경우 추가하는 0의 수와 올바른 트림 수를 수정해야 할 수도 있습니다. 이를 결정하려면 가장 높은 값의 문자 수(올바른 자르기 숫자)를 파악한 다음 가장 작은 값에 추가해야 하는 0의 개수(앞에 추가해야 하는 0의 개수)를 결정합니다. 모든 것).
이게 도움이 되길 바란다!
줄리안
저는 jmp를 처음 접했습니다. 저의 무지함을 양해해 주시기 바랍니다.
모든 데이터 앞에 0이 있도록 변경하거나 1, 11, 12, 13, 2, 3, 4 등이 아닌 실제 숫자 순서로 목록을 변경하는 방법이 있습니까?
Byron의 제안은 행에 저장된 문자가 없는 한 완벽하게 작동합니다. 그렇게 하면 열을 숫자로 변경하면 해당 항목이 삭제됩니다.
열이 이미 문자로 설정되어야 하는 데이터에 앞에 0이 있으므로 문자와 숫자를 저장하고 있기 때문이라고 가정합니다. 해당 0을 제거하려면 편집 > 검색 > 찾기에서 정규식을 사용할 수 있습니다.정규식은 매우 강력하지만 보기에는 그리 친숙하지 않습니다. 상황에 따라 다음 정규식은 선행 0을 검색하지만 문자열 내부에 있는 0은 찾지 않습니다.
(?
열 데이터 유형을 숫자로 변경하고 모델링 유형을 연속형으로 변경하면 선행 0이 사라집니다.