R 转换数据帧列表,以获得df名称的平均值和年平均值
我正在用R语言分析河流流量数据,我有一个数据帧列表。每个数据帧代表一个子基(910、950、1012和1087),具有完全相同的结构和变量数量,并包含每年的IHA指标值(IHA1、IHA2)(2004:2007)R 转换数据帧列表,以获得df名称的平均值和年平均值,r,list,mean,R,List,Mean,我正在用R语言分析河流流量数据,我有一个数据帧列表。每个数据帧代表一个子基(910、950、1012和1087),具有完全相同的结构和变量数量,并包含每年的IHA指标值(IHA1、IHA2)(2004:2007) 流程测试嗨,乔安娜,一个可能的解决方案是: library(plyr) library(dplyr) # bind list to a tibble and make list names to a column Flowtest_df <- plyr::ldply(Flowt
流程测试嗨,乔安娜,一个可能的解决方案是:
library(plyr)
library(dplyr)
# bind list to a tibble and make list names to a column
Flowtest_df <- plyr::ldply(Flowtest, data.frame) %>%
dplyr::rename(RCH = 1)
# mean
Flowtest_df %>%
dplyr::summarise(IHA1_mean = mean(IHA1),
IHA2_mean = mean(IHA2))
# year mean
Flowtest_df %>%
dplyr::group_by(Year) %>%
dplyr::summarise(IHA1_mean = mean(IHA1),
IHA2_mean = mean(IHA2))
# RCH mean
Flowtest_df %>%
dplyr::group_by(RCH) %>%
dplyr::summarise(IHA1_mean = mean(IHA1),
IHA2_mean = mean(IHA2))
库(plyr)
图书馆(dplyr)
#将列表绑定到TIBLE,并将列表名称绑定到列
流量试验(单位:df%)
dplyr::重命名(RCH=1)
#卑鄙
流程测试_df%>%
dplyr::总结(IHA1_平均值=平均值(IHA1),
IHA2_平均值=平均值(IHA2))
#年平均数
流程测试_df%>%
dplyr::按年份划分的分组百分比>
dplyr::总结(IHA1_平均值=平均值(IHA1),
IHA2_平均值=平均值(IHA2))
#RCH均值
流程测试_df%>%
dplyr::分组依据(RCH)%>%
dplyr::总结(IHA1_平均值=平均值(IHA1),
IHA2_平均值=平均值(IHA2))
嗨,乔安娜,一个可能的解决方案是:
library(plyr)
library(dplyr)
# bind list to a tibble and make list names to a column
Flowtest_df <- plyr::ldply(Flowtest, data.frame) %>%
dplyr::rename(RCH = 1)
# mean
Flowtest_df %>%
dplyr::summarise(IHA1_mean = mean(IHA1),
IHA2_mean = mean(IHA2))
# year mean
Flowtest_df %>%
dplyr::group_by(Year) %>%
dplyr::summarise(IHA1_mean = mean(IHA1),
IHA2_mean = mean(IHA2))
# RCH mean
Flowtest_df %>%
dplyr::group_by(RCH) %>%
dplyr::summarise(IHA1_mean = mean(IHA1),
IHA2_mean = mean(IHA2))
库(plyr)
图书馆(dplyr)
#将列表绑定到TIBLE,并将列表名称绑定到列
流量试验(单位:df%)
dplyr::重命名(RCH=1)
#卑鄙
流程测试_df%>%
dplyr::总结(IHA1_平均值=平均值(IHA1),
IHA2_平均值=平均值(IHA2))
#年平均数
流程测试_df%>%
dplyr::按年份划分的分组百分比>
dplyr::总结(IHA1_平均值=平均值(IHA1),
IHA2_平均值=平均值(IHA2))
#RCH均值
流程测试_df%>%
dplyr::分组依据(RCH)%>%
dplyr::总结(IHA1_平均值=平均值(IHA1),
IHA2_平均值=平均值(IHA2))
您还可以执行以下操作:
map(list(NULL,'Year','subbasin'), ~bind_rows(Flowtest, .id = "subbasin") %>%
group_by(.dots = .x)%>%summarise(across(starts_with("IHA"), mean),.groups='drop'))
[[1]]
# A tibble: 1 x 2
IHA1 IHA2
<dbl> <dbl>
1 453. 582.
[[2]]
# A tibble: 4 x 3
Year IHA1 IHA2
<int> <dbl> <dbl>
1 2004 243. 532.
2 2005 392. 762.
3 2006 614. 735
4 2007 564. 300.
[[3]]
# A tibble: 4 x 3
subbasin IHA1 IHA2
<chr> <dbl> <dbl>
1 1012 445 561
2 1087 575 698.
3 910 181. 643.
4 950 612. 427
map(列表(NULL,'Year','subbasin'),~bind_行(Flowtest,.id=“subbasin”)%>%
分组依据(.dots=.x)%>%总结(跨越(以“IHA”开头),平均值),.groups='drop'))
[[1]]
#一个tibble:1x2
IHA1 IHA2
1 453. 582
[[2]]
#一个tibble:4x3
年份IHA1 IHA2
1 2004 243. 532
2 2005 392. 762
3 2006 614. 735
4 2007 564. 300
[[3]]
#一个tibble:4x3
亚基IHA1-IHA2
1 1012 445 561
2 1087 575 698.
3 910 181. 643
4 950 612. 427
您还可以执行以下操作:
map(list(NULL,'Year','subbasin'), ~bind_rows(Flowtest, .id = "subbasin") %>%
group_by(.dots = .x)%>%summarise(across(starts_with("IHA"), mean),.groups='drop'))
[[1]]
# A tibble: 1 x 2
IHA1 IHA2
<dbl> <dbl>
1 453. 582.
[[2]]
# A tibble: 4 x 3
Year IHA1 IHA2
<int> <dbl> <dbl>
1 2004 243. 532.
2 2005 392. 762.
3 2006 614. 735
4 2007 564. 300.
[[3]]
# A tibble: 4 x 3
subbasin IHA1 IHA2
<chr> <dbl> <dbl>
1 1012 445 561
2 1087 575 698.
3 910 181. 643.
4 950 612. 427
map(列表(NULL,'Year','subbasin'),~bind_行(Flowtest,.id=“subbasin”)%>%
分组依据(.dots=.x)%>%总结(跨越(以“IHA”开头),平均值),.groups='drop'))
[[1]]
#一个tibble:1x2
IHA1 IHA2
1 453. 582
[[2]]
#一个tibble:4x3
年份IHA1 IHA2
1 2004 243. 532
2 2005 392. 762
3 2006 614. 735
4 2007 564. 300
[[3]]
#一个tibble:4x3
亚基IHA1-IHA2
1 1012 445 561
2 1087 575 698.
3 910 181. 643
4 950 612. 427