programing

숫자를 고정 너비로 형식 지정(앞에 0이 있음)

javajsp 2023. 6. 8. 19:22

숫자를 고정 너비로 형식 지정(앞에 0이 있음)

다음 코드

a <- seq(1,101,25)
b <- paste("name", 1:length(a), sep = "_")

는 다음과 같은 출력을 생성합니다.

"name_1"  "name_26"  "name_51"  "name_76"  "name_101"

모든 값의 너비를 동일하게 설정하여 다음과 같이 값을 0으로 채웁니다.

"name_001"  "name_026"  "name_051"  "name_076"  "name_101"

그걸 어떻게 처리하죠?

(이 질문은 이 질문과 관련이 있습니다.)

이에 대한 몇 가지 해결책이 있습니다.

그 중 하나는 사용하는 것입니다.sprintf이 기능은 다음과 같습니다.C문자열에 포함된 스타일 형식 코드로 전달된 다른 인수의 형식을 나타냅니다.예를 들어 포맷 코드%3d즉, 숫자를 너비 3의 정수로 형식 지정합니다.

a <- seq(1,101,25)
sprintf("name_%03d", a)
[1] "name_001" "name_026" "name_051" "name_076" "name_101"

또 하나는formatC그리고.paste:

paste("name", formatC(a, width=3, flag="0"), sep="_")
[1] "name_001" "name_026" "name_051" "name_076" "name_101"

언급URL : https://stackoverflow.com/questions/8266915/format-number-as-fixed-width-with-leading-zeros