数据集问题,在r中发生突变



输入图像描述在这里输入图像描述在这里我改变了一个新的列,我写view(),然后显示新的列。然而,这是在调用view(dataset)之后,并没有显示新的列或colnames()。它不显示新的变量列名。

如何在R中永久地连接数据集中的新计算列?

在第一个代码块中,我选择年份、姓名和数字(婴儿出生年份)- 3个变量的实际数据集。然后我也计算year_total列。当我运行代码时,无法找到number。如何从r中的数据集保存环境中的所有个体变量?

babynames |>
select(year,name,number) |>
group_by(year) |>
mutate(year_total = sum(number) ) |>
View()
babynames |>
select(year,name,number,year_total) |>
mutate(fraction_people = number / year_total) |>
View()

dput (babynames)

我想这只是一个打字错误。在babynames数据中没有名为number的变量,假设您使用的是babynames包中的变量。有一个变量叫做n。以下内容适合我:

library(babynames)
data(babynames)
babynames |>
rename(number = n) |>
select(year,name,number) |>
group_by(year) |>
mutate(year_total = sum(number) ) |>
View()

您没有将数据集重新分配给新对象。

这样做将返回一个新创建的列的数据集,但它不会改变数据集本身:

babynames |>
rename(number = n) |>
select(year,name,number) |>
group_by(year) |>
mutate(year_total = sum(number) )

要用新版本替换数据框架,您需要执行以下操作:

babynames <- babynames |>
rename(number = n) |>
select(year,name,number) |>
group_by(year) |>
mutate(year_total = sum(number) )
现在你可以看到新的变量:
summary(babynames)
year          name               number          year_total     
Min.   :1880   Length:1924665     Min.   :    5.0   Min.   : 192696  
1st Qu.:1951   Class :character   1st Qu.:    7.0   1st Qu.:3040409  
Median :1985   Mode  :character   Median :   12.0   Median :3646362  
Mean   :1975                      Mean   :  180.9   Mean   :3254023  
3rd Qu.:2003                      3rd Qu.:   32.0   3rd Qu.:3799172  
Max.   :2017                      Max.   :99686.0   Max.   :4200007  

最新更新