# NOT RUN {
library(aqp)
data(sp5)
# segment by upper 25-cm
test1 <- segment(sp5, intervals = c(0, 100))
nrow(test1)
print(object.size(test1), units = "Mb")
# segment by 1-cm increments
test2 <- segment(sp5, intervals = 0:100)
nrow(test2)
print(object.size(test2), units = "Mb")
# segment and aggregate
test3 <- segment(horizons(sp5),
intervals = c(0, 5, 15, 30, 60, 100, 200),
hzdepcols = c("top", "bottom")
)
test3$hzthk <- test3$bottom - test3$top
test3_agg <- by(test3, test3$segment_id, function(x) {
data.frame(
hzID = x$hzID[1],
segment_id = x$segment_id[1],
average = weighted.mean(x$clay, w = x$hzthk)
)
})
test3_agg <- do.call("rbind", test3_agg)
# }
Run the code above in your browser using DataLab