【问题标题】:creating new data frames from exsting data frames with r使用 r 从现有数据帧创建新数据帧
【发布时间】:2017-12-15 21:53:39
【问题描述】:

我有 11 个流量计数数据帧。 对于每个数据框,我想过滤相关信息(dplyr)。 但我想在新的数据框中执行这些操作,并为每年的每个数据框起一个新名称。我不想更改原始数据框。 例如 traffic_2016filter_traffic_2016 和每个数据帧。

library(foreach)
library(iterators)

foreach(x=iter(m)) %do% {
assign(x, filter(get(x), kvish %in% 1 , keta %in% 10 ,maslul %in% 1 ) ) 
}

除了年份之外,数据框看起来都一样

> traffic_2016
  kvish keta maslul yom nefah status                date
1         1   10      1   1  1710     NA 2016-09-11 00:00:00
2         1   10      1   1   934     NA 2016-09-11 01:00:00
3         1   10      1   1   800     NA 2016-09-11 02:00:00
4         1   10      1   1   637     NA 2016-09-11 03:00:00
5         1   10      1   1   588     NA 2016-09-11 04:00:00
6         1   10      1   1   951     NA 2016-09-11 05:00:00
7         1   10      1   1  2312     NA 2016-09-11 06:00:00
8         1   10      1   1  3769     NA 2016-09-11 07:00:00
9         1   10      1   1  3348     NA 2016-09-11 08:00:00

【问题讨论】:

    标签: r list dataframe filter


    【解决方案1】:

    如果你有相同“种类”的对象,它们应该被组织起来以反映它,你应该把你的 data.frames 放在一个列表中,然后你可以使用 lappy.例如:

    traffic <- list(traffic_2014,traffic_2015,traffic_2016) # put your 11 dfs here
    traffic_filtered <- traffic %>% lapply(. %>% filter(kvish %in% 1 , keta %in% 10 ,maslul %in% 1)) # get a new list with filtered data.frames
    

    【讨论】:

      猜你喜欢
      • 2019-05-16
      • 2023-03-06
      • 1970-01-01
      • 1970-01-01
      • 2022-08-12
      • 1970-01-01
      • 2020-10-16
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多