У меня есть растровый стек/кирпич в R, содержащий 84 слоя, и я пытаюсь назвать их в соответствии с годом и месяцем с 1999 по 2007 год (с ноября 1999 года по октябрь 2006 года)). Однако по какой-то причине R продолжает добавлять «X» в начало любых имен, которые я даю своим слоям.Почему R добавляет «x» при переименовании слоев растрового стека
Кто-нибудь знает, почему это происходит и как его исправить? Вот некоторые из способов, которые я пробовал:
# Import raster brick
rast <- brick("rast.tif")
names(rast)[1:3]
[1] "MonthlyRainfall.1" "MonthlyRainfall.2" "MonthlyRainfall.3"
## Method 1
names(rast) <- paste0(rep(1999:2006, each=12), 1:12)[11:94]
names(rast)[1:3]
[1] "X199911" "X199912" "X20001"
## Method 2
# Create a vector of dates
dates <- format(seq(as.Date('1999/11/1'), as.Date('2006/10/1'), by='month'), '%Y%m')
dates[1:3]
[1] "199911" "199912" "200001"
# Set names
rast <- setNames(rast, dates)
names(rast)[1:3]
[1] "X199911" "X199912" "X200001"
## Method 3
names(rast) <- paste0("", dates)
names(rast)[1:3]
[1] "X199911" "X199912" "X200001"
## Method 4
substr(names(rast), 2, 7)[1:3]
[1] "199911" "199912" "200001"
names(rast) <- substr(names(rast), 2, 7)
names(rast)[1:3]
[1] "X199911" "X199912" "X200001"
В какой-то степени я был в состоянии обойти эту проблему путем добавления «X» в начале некоторых из моих других данных, но теперь его достиг точки где я больше не могу этого делать. Любая помощь будет принята с благодарностью!
Прочитайте документацию на '? Make.names'. – joran