1
我有一個data.frames列表和一個spatial.data列表。幀都具有相同的列數和相同的名稱。現在,我更改了存儲在data.frames列表中的(Normal)data.frames中的一些列名稱,並希望將這些更改寫入存儲在另一個列表(Spatial)data.frames中的data.frames。將Data.frames的列表名稱分配給R中的data.frames列表中的其他(Spatial)data.frames R
我該如何歸檔類似的東西?
一些示例:
require (sp)
mtcars.S <-mtcars
coordinates(mtcars.S) <- c('gear', 'carb')
mtcars.S$coords.x1 <- 12345
mtcars.S$coords.x2 <- 12345
attitude.S <- attitude
coordinates(attitude.S) <- c('critical', 'advance')
attitude.S$coords.x1 <- 12345
attitude.S$coords.x2 <- 12345
quakes.S <- quakes
coordinates(quakes.S) <- c('lat', 'long')
quakes.S$coords.x1 <- 12345
quakes.S$coords.x2 <- 12345
f.Names <- c('mtcars.S','attitude.S','quakes.S')
listofSpatialDF <- mget(f.Names)
b2DF <- function(x) {
as.data.frame(x)
}
list_DF <- lapply(listofSpatialDF,b2DF)
coordsD <- function(x){
x[,!names(x) %in% c("coords.x1","coords.x2")]
}
list_DF <- lapply(list_DF,coordsD)
那麼一些列名在data.frames改變。 data.frames列表中的列名稱應該寫爲(Spatial)data.frames另一列表的列名稱。
我試了一下到現在爲止是:
changeCOL <- function(x, y){
names(y)
}
test<-mapply(changeCOL,x=list_DF,y=listofSpatialDF)
此功能成功地讀出不同data.frames的列名,並將其保存在其相應的名稱。但現在我不知道如何繼續或解決這個問題。
非常感謝你的代碼工作得太好了!那麼,我想我將不得不學習如何使用return()可能... – Deset