r - dplyr 中单行的操作
问题描述
是否可以使用管道对数据帧的单行执行 dplyr 操作?例如,假设我有以下一个数据框(称为 df)并希望对该数据框的列进行一些操作:
df <- df %>%
mutate(col1 = col1 + col2)
此代码将一列设置为该列与另一列的总和。如果我想这样做,但只针对单行怎么办?
df[1,] <- df[1,] %>%
mutate(col1 = col1 + col2)
我意识到这是在 base R 中的一个简单操作,但我非常好奇并且很想使用 dplyr 操作和管道来实现这一点。这是可能的还是违反 dplyr 语法?
这是一个例子。假设我有一个数据框:
df = data.frame(a = rep(1, 100), b = rep(1,100))
我展示的第一个例子:
df <- df %>%
mutate(a = a + b)
将导致所有行的列 a_xPlacexHolderxColumnaPlacexHolderx_ 为 2。
第二个示例只会导致列 a_xPlacexHolderxColumnaPlacexHolderx_ 的第一行为 2。
解决方案
推荐阅读
- optaplanner - Optaplanner:solver.getBestScore 和solver.explainBestScore 显示不同的结果?
- azure - 没有“通用数据服务”API 选项 Azure
- linux - 是否使用 Xvfb 运行 OpenGL 效果版本?
- reactjs - 如何更改 ContextualMenu 的默认图标
- linux - Imagemagick - 结合“裁剪”和“添加图层”参数
- ambari - 没有 Cloudera 订阅的 Ambari 集群设置
- python - 如何在 Keras 拟合输出中隐藏自定义层丢失
- python - 使用 Dask 从 CSV 文件中采样确切的行数
- python - python - 联合/合并嵌套字典和列表以获取值类型
- hybris - 如何在 impex 中为日期格式指定时区?