trunc()
trunc(x) Returns:
numeric · Updated March 13, 2026 · Base Functions math rounding numeric trunc base
The trunc() function truncates numeric values toward zero, removing the fractional part.
Syntax
trunc(x)
Parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
x | numeric | required | A numeric vector or scalar to truncate |
Examples
Basic usage
# Truncate positive numbers
trunc(3.14)
# [1] 3
trunc(3.99)
# [1] 3
Negative numbers
# Truncate negative numbers (toward zero)
trunc(-2.7)
# [1] -2
trunc(-0.9)
# [1] 0
Comparison with floor and ceiling
x <- c(-2.5, -1.5, -0.5, 0.5, 1.5, 2.5)
floor(x)
# [1] -3 -2 -1 0 1 2
ceiling(x)
# [1] -2 -1 0 1 2 3
trunc(x)
# [1] -2 -1 0 0 1 2
Common Patterns
Extracting integer part
# Get integer part of a number
trunc(123.456)
# [1] 123
# Works with negative numbers too
trunc(-123.456)
# [1] -123
Date/time operations
# Truncate POSIXct to date
dt <- as.POSIXct("2024-03-15 14:30:45")
trunc(dt, "days")
# [1] "2024-03-15"
# Truncate to hours
trunc(dt, "hours")
# [1] "2024-03-15 14:00:00"
Financial calculations
# Integer dollars from decimal prices
prices <- c(10.99, 20.50, 5.01)
trunc(prices)
# [1] 10 20 5