R:向数据帧添加0

如何在 1990 年为源太阳能添加 0 量到下面的数据框中?1990 年的太阳能目前没有价值。

数据:

来源 数量
1990年 煤炭 19203
1990年 2345
1991年 煤炭 18490
1991年 2398
1991年 太阳的 123
1992年 ... ...
... ... ...
2019年 ... ...

回答

我们可以使用completetidyr

library(tidyr)
complete(data, year, source, fill = list(amount = 0))

-输出

# A tibble: 6 x 3
#   year source  amount
#  <int> <chr>    <dbl>
#1  1990 coal     19203
#2  1990 nuclear   2345
#3  1990 solar        0
#4  1991 coal     18490
#5  1991 nuclear   2398
#6  1991 solar      123

另外,如果有一些'年份',缺少。我们可以使用一个范围

complete(data, year = 1990:2019, source, fill = list(amount = 0))

数据

data <- structure(list(year = c(1990L, 1990L, 1991L, 1991L, 1991L), 
source = c("coal", 
"nuclear", "coal", "nuclear", "solar"), amount = c(19203L, 2345L, 
18490L, 2398L, 123L)), class = "data.frame", row.names = c(NA, 
-5L))


以上是R:向数据帧添加0的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>