【发布时间】:2021-07-08 00:11:44
【问题描述】:
假设我有一个sf 对象列表,我想计算所选列的平均值。之后,我想将这些值存储在新数据框中的单独列中。样本数据可以从here下载。以下是我到目前为止所做的。如何解决这个问题?
# Now make a list of two sample shapefiles "a" and "b"
myfiles = list.files(path = "~",
pattern=".shp$", full.names = TRUE)
# Read each shapefile and return a list of sf objects
listOfShp = lapply(myfiles, st_read)
# First make an empty df
time.series = data.frame()
# Start a loop
for (i in listOfShp){
time.series$Mean.Z = data.frame(mean(i$z))
time.series$Intensity.mean = data.frame(mean(i$V4))
}
Error in `$<-.data.frame`(`*tmp*`, "Mean.Z", value = list(mean.i.z. = -4.19655105979791)) :
replacement has 1 row, data has 0
【问题讨论】: