格式 R 中的小数位数
在本文中,我们将讨论如何在 R 编程语言中将数字格式化为 n 位小数。在 R 语言中,十进制数用 表示。象征
方法一:Format()函数
Format()函数可用于通过四舍五入并仅显示小数点后特定数量的元素来格式化十进制值。
Syntax:
format(round(value, n), nsmall = n)
Parameters:
It can take two parameters.
- round(value,n) function : which will specify the number of decimal places to be selected. It will take input number along with integer value that select decimal places of the given number
- nsmall function : which will specify the number of decimal places to be selected.It will take input number along with integer value that select decimal places of the given number
Result:
Formatted Decimal number.
例子:
R
# define an variable and initialize
# to decimal number
a=12.4556785
# display decimal places upto 3
print(format(round(a, 3), nsmall = 3))
# display decimal places upto 4
print(format(round(a, 4), nsmall = 4))
# display decimal places upto 0
print(format(round(a, 0), nsmall = 0))
# display decimal places upto 1
print(format(round(a, 1), nsmall = 1))
R
# define a vector with decimal
# elements
a=c(12.4556785,1.345,6.789,7.890)
# display decimal places upto 3
for (i in a){
print(format(round(i, 3), nsmall = 3))
}
R
# decimal number
a=14.6788
# format upto 4 places
print( sprintf(a, fmt = '%.4f') )
# format upto 8 places
print( sprintf(a, fmt = '%.8f') )
# format upto 1 place
print( sprintf(a, fmt = '%.1f') )
# format upto 0 places
print( sprintf(a, fmt = '%.0f') )
R
# define a vector with decimal elements
a=c(12.4556785,1.345,6.789,7.89089)
# display decimal places upto 4
for (i in a){
print( sprintf(i, fmt = '%.4f') )
}
print("---------------------")
# display decimal places upto 1
for (i in a){
print( sprintf(i, fmt = '%.1f') )
}
print("---------------------")
# display decimal places upto 2
for (i in a){
print( sprintf(i, fmt = '%.2f') )
}
print("---------------------")
# display decimal places upto 0
for (i in a){
print( sprintf(i, fmt = '%.0f') )
}
R
# decimal number
a=14.67885350938953809580
# format upto 4 places
options(digits=4)
print(a)
# format upto 8 places
options(digits=8)
print(a)
# format upto 3 place
options(digits=3)
print(a)
R
# define a vector with decimal elements
a=c(12.4556785,1.345,6.789,7.89089)
# display decimal places upto 4
options(digits=4)
for (i in a){
print( i )
}
print("---------------------")
# display decimal places upto 6
options(digits=6)
for (i in a){
print( i )
}
print("---------------------")
# display decimal places upto 2
options(digits=2)
for (i in a){
print( i )
}
输出:
示例 2:
电阻
# define a vector with decimal
# elements
a=c(12.4556785,1.345,6.789,7.890)
# display decimal places upto 3
for (i in a){
print(format(round(i, 3), nsmall = 3))
}
输出:
方法二:使用sprintf()函数
使用sprintf()函数,我们可以指定小数位的格式以及变量
Syntax: sprintf(variable, fmt = ‘%.nf’)
Parameters:
- variable – input decimal value
- fmt stands for format which will take parameter “.%nf” where n specifies number of decimal places to be selected.
Result:
formatted decimal number
示例 1:
电阻
# decimal number
a=14.6788
# format upto 4 places
print( sprintf(a, fmt = '%.4f') )
# format upto 8 places
print( sprintf(a, fmt = '%.8f') )
# format upto 1 place
print( sprintf(a, fmt = '%.1f') )
# format upto 0 places
print( sprintf(a, fmt = '%.0f') )
输出:
示例 2:
电阻
# define a vector with decimal elements
a=c(12.4556785,1.345,6.789,7.89089)
# display decimal places upto 4
for (i in a){
print( sprintf(i, fmt = '%.4f') )
}
print("---------------------")
# display decimal places upto 1
for (i in a){
print( sprintf(i, fmt = '%.1f') )
}
print("---------------------")
# display decimal places upto 2
for (i in a){
print( sprintf(i, fmt = '%.2f') )
}
print("---------------------")
# display decimal places upto 0
for (i in a){
print( sprintf(i, fmt = '%.0f') )
}
输出:
方法 3:使用 options()函数
该函数用于返回小数点后的数字。
句法:
options(digits = n)
其中digits 是要与小数点前的数字一起返回的位数。
例子:
a=1.24325454666
options(digits=4)
它将返回 1.243
示例 1:
电阻
# decimal number
a=14.67885350938953809580
# format upto 4 places
options(digits=4)
print(a)
# format upto 8 places
options(digits=8)
print(a)
# format upto 3 place
options(digits=3)
print(a)
输出:
示例 2:
电阻
# define a vector with decimal elements
a=c(12.4556785,1.345,6.789,7.89089)
# display decimal places upto 4
options(digits=4)
for (i in a){
print( i )
}
print("---------------------")
# display decimal places upto 6
options(digits=6)
for (i in a){
print( i )
}
print("---------------------")
# display decimal places upto 2
options(digits=2)
for (i in a){
print( i )
}
输出: