위의 기술을 오랫동안 사용했습니다. 어느 날 나는 텍스트 파일로 결과를 복사 한 몇 가지 문제가 있었다 나는 이런 식으로 내 문제 해결 : 자사에 필요한 파일 수에 쓸 때
trunc_number_n_decimals <- function(numberToTrunc, nDecimals){
splitNumber <- strsplit(x=format(numberToTrunc, digits=20, format=f), split="\\.")[[1]]
decimalPartTrunc <- substr(x=splitNumber[2], start=1, stop=nDecimals)
truncatedNumber <- as.numeric(paste0(splitNumber[1], ".", decimalPartTrunc))
return(truncatedNumber)
}
print(trunc_number_n_decimals(9.1762034354551236, 6), digits=14)
[1] 9.176203
print(trunc_number_n_decimals(9.1762034354551236, 7), digits=14)
[1] 9.1762034
print(trunc_number_n_decimals(9.1762034354551236, 8), digits=14)
[1] 9.17620343
print(trunc_number_n_decimals(9.1762034354551236, 9), digits=14)
[1] 9.176203435
이 솔루션은 경우에 매우 편리를 많은 소수는 같은 16 그냥,`시도 미리 포장 된 함수에서 형식()
numberToWrite <- format(trunc_number_n_decimals(9.1762034354551236, 9), digits=20)
를 파일에 쓰기 사용하기 전에 숫자를 문자열로 변환하는 plyr :: round_any (0.1234567, 정확성을 기억 = .0001, f = floor)' –