Быстрое автоматическое построение простого почвенного профиля в R
Заметка о том, как можно быстро и просто создать простую визуализацию почвенного профиля, если времени на разбор новых программ нет. Главное правильно подготовить исходные данные в Exel.
В свое время было задание построить простенький профиль по данным ручного почвенного бурения. Необходимо было сделать быстро, четко, без особых заморочек и излишеств. Разбираться в новых программах не было времени (да и особого желания тоже).
Поэтому, вспомнив про R и RStudio я решил снова стать «тыжпрограммистом» и попробовать своими руками сделать мало-мальский автоматически построенный и похожий на почвенный профиль по материалам моих полевых выездов.
Не будучи великим почвоведом, с горем пополам удалось как-то распознать то, что выявили в результате бурения ручным буром. Мы обследовали почвы в межбугровых котловинах Приволжского района Астраханской области.
В качестве примера я приведу несколько точек по одной маршрутной линии. Точки бурения были заложены на равном расстоянии друг от друга между двумя буграми Бэра.
По результатам было спроектировано следующее:

Полный исходный .r-код доступен по ссылке.
Первостепенно, что необходимо сделать, это, конечно, подготовить исходные данные в Exel. Причем это сделать нужно аккуратно и правильно. Необходимо чтобы каждый столбец был отделен друг от друга, был поставлен разделитель «ЗАПЯТАЯ», каждая информация как по строке, так и по столбцу была согласована. Выходной файл нужно сохранить в формате .csv, так как он является отправным пунктом в нашей программе.
Я сделал это так:
Рассмотрим теперь процесс анализа и визуализации более подробно. Начнем с самого начала нашей программы.
encoding = «utf-8»
require(aqp)
require(RColorBrewer)
require(latticeExtra)
require(plyr)
require(reshape)
Данные первые строчки кода говорят о том, что мы работаем в кодировке utf-8. Остальные строки это запрос необходимых библиотек, которые мы используем в нашей программе. Необходимо проверить, чтобы все они были установлены и согласованы с версией языка R.
Далее мы подключаемся к нашей папке с подготовленным .csv файлом и передаем ее нашей программе для чтения, где позже «dat» – переменная (объект) с нашими файлами.
setwd(«E:/R/soil/hill depressions»)
dat <- read.csv(paste(c(getwd(), «/Soil_Hole2.csv»), collapse=“„),
stringsAsFactors = FALSE, encoding = «UTF-8»)
str(dat)
dat <- within(dat, label <- paste(name))
print(dat)
depths(dat) <- id ~ top + bottom
Функция str(dat) позволяет вывести внутреннюю структуру объекта (в нашем случае dat), то есть посмотреть что из себя представляет каждый столбец, а print(dat) – выводит всю информацию.

Опубликовано · Автор Victor