使用 lapply 将列添加到数据框列表
Adding a column to a list of dataframe with lapply
我有一个大型面板数据,其中包含每个年月的省份。我想 运行 通过数据框列表(我基于此初始数据框创建)的函数,以便使用此函数的输入为每个数据框获取一个新列。但是,当我使用 运行 代码时,新列并没有出现。这是代码:
> head(dataSPEI)
# A tibble: 6 x 11
adm1 year month prov_code mean_temperaturec neighboors province_name avgpreci longitude latitude PET
<chr> <dbl> <dbl> <chr> <dbl> <chr> <chr> <dbl> <dbl> <dbl> <dbl>
1 TUR034 1978 1 TR100 5.61 TR100, TR21~ Istanbul 170. 28.8 41.2 0
2 TUR034 1978 2 TR100 7.48 TR100, TR21~ Istanbul 88 28.8 41.2 0
3 TUR034 1978 3 TR100 8.55 TR100, TR21~ Istanbul 71 28.8 41.2 0
4 TUR034 1978 4 TR100 11.6 TR100, TR21~ Istanbul 88.7 28.8 41.2 0
5 TUR034 1978 5 TR100 16.6 TR100, TR21~ Istanbul 33.2 28.8 41.2 0
6 TUR034 1978 6 TR100 20.8 TR100, TR21~ Istanbul 5.30 28.8 41.2 0
dat.s <- split(dataSPEI, dataSPEI$prov_code)
lapply(dat.s, function(x) {
x$PET <- thornthwaite(x$mean_temperaturec, x$latitude[1])
return(x)
})
有人知道我做错了什么吗?
尝试将 lapply 调用的结果分配给一个对象;在这种情况下,您可以分配回原始数据帧列表
dat.s<-lapply(...)
我有一个大型面板数据,其中包含每个年月的省份。我想 运行 通过数据框列表(我基于此初始数据框创建)的函数,以便使用此函数的输入为每个数据框获取一个新列。但是,当我使用 运行 代码时,新列并没有出现。这是代码:
> head(dataSPEI)
# A tibble: 6 x 11
adm1 year month prov_code mean_temperaturec neighboors province_name avgpreci longitude latitude PET
<chr> <dbl> <dbl> <chr> <dbl> <chr> <chr> <dbl> <dbl> <dbl> <dbl>
1 TUR034 1978 1 TR100 5.61 TR100, TR21~ Istanbul 170. 28.8 41.2 0
2 TUR034 1978 2 TR100 7.48 TR100, TR21~ Istanbul 88 28.8 41.2 0
3 TUR034 1978 3 TR100 8.55 TR100, TR21~ Istanbul 71 28.8 41.2 0
4 TUR034 1978 4 TR100 11.6 TR100, TR21~ Istanbul 88.7 28.8 41.2 0
5 TUR034 1978 5 TR100 16.6 TR100, TR21~ Istanbul 33.2 28.8 41.2 0
6 TUR034 1978 6 TR100 20.8 TR100, TR21~ Istanbul 5.30 28.8 41.2 0
dat.s <- split(dataSPEI, dataSPEI$prov_code)
lapply(dat.s, function(x) {
x$PET <- thornthwaite(x$mean_temperaturec, x$latitude[1])
return(x)
})
有人知道我做错了什么吗?
尝试将 lapply 调用的结果分配给一个对象;在这种情况下,您可以分配回原始数据帧列表
dat.s<-lapply(...)