mutate():找不到对象..?

问题描述 投票:0回答:1

为什么

mutate()
给出一个错误消息,说明对象找不到,尽管它显然在那里并且可以
n_mm
select()

当我首先将其变成tibble时,为什么它会起作用?
> tbl(db, "jobstat") |>
    select(n_mm, n_mmo)
# Source:   SQL [?? x 2]
# Database: mysql  [...]
    n_mm n_mmo
   <int> <int>
 1     0     3
 2     0     2
 3     5     0
 4     0     0
 5     2     0

> tbl(db, "jobstat") |>
    select(n_mm, n_mmo) |>
    mutate(n_nok = n_mm + n_mmo)
Error in eval(cols[[col]], .data, parent.frame()) : 
  object 'n_mm' not found
 

数据库中的数据基本上没有在R中实例化,因此,除非您以前使用
> tbl(db, "jobstat") |> select(n_mm, n_mmo) |> as_tibble() |> mutate(n_nok = n_mm + n_mmo) # A tibble: 682,491 × 3 n_mm n_mmo n_nok <int> <int> <int> 1 0 3 3 2 0 2 2 3 5 0 5 4 0 0 0
tidyverse
1个回答
0
投票
如果您以前这样做,那就可以了。

as_tibble()

执行计算同时实例化数据。
    

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.