ryo*_*toi 0 r dplyr data.table
我想将此代码替换为 dplyr 样式。
financials[is.na(ForecastEarningsPerShare), ForecastEarningsPerShare := ForecastEarningsPerShare2]
Run Code Online (Sandbox Code Playgroud)
你能告诉我该怎么做吗?
从data.table:
financials[is.na(ForecastEarningsPerShare),
ForecastEarningsPerShare := ForecastEarningsPerShare2]
Run Code Online (Sandbox Code Playgroud)
进入dplyr,也许字面意思是:
financials %>%
mutate(
ForecastEarningsPerShare = if_else(is.na(ForecastEarningsPerShare),
ForecastEarningsPerShare2,
ForecastEarningsPerShare)
)
Run Code Online (Sandbox Code Playgroud)
但有一个更容易阅读的方法:
financials %>%
mutate(
ForecastEarningsPerShare = coalesce(ForecastEarningsPerShare,
ForecastEarningsPerShare2)
)
Run Code Online (Sandbox Code Playgroud)
where使用参数中的coalesce第一个非值并返回它(向量化)。NA
| 归档时间: |
|
| 查看次数: |
72 次 |
| 最近记录: |