r - 在数据表的列中重复行
问题描述
我有一个数据表,其中包括NA
一些单元格中的 s,如下所示。数据表:
在此处输入图像描述 但是,我想将名为“Category”的列中的第一行重复到以下两行写为“NA”的行,而其他列“Numeric”和“Numeric.null”没有任何变化。Category 中的第 4 行也是如此,重复到第 5 行和第 6 行,但其他列没有变化。新的:
我只是在学习 R 编程。我试过代表功能。但我做不到。请帮我。
解决方案
我们可以fill
使用tidyr
library(dplyr)
library(tidyr)
df1 <- df1 %>%
fill(Category)
df1
# Category Numeric Numeric.null
#1 A 1 1
#2 A 2 2
#3 A 3 4
#4 D 4 7
#5 D 5 6
#6 D 6 8
#7 E 7 11
或data.table
与na.locf0
library(data.table)
library(zoo)
setDT(df1)[, Category := na.locf0(Category)][]
数据
df1 <- structure(list(Category = c("A", NA, NA, "D", NA, NA, "E"), Numeric = 1:7,
Numeric.null = c(1L, 2L, 4L, 7L, 6L, 8L, 11L)),
class = "data.frame", row.names = c(NA,
-7L))
推荐阅读
- python - 只有在上一个任务成功后,我才能让 Celery 任务运行
- java - 写入文件:Java 中 Gurobi GRBModel 的约束和变量
- reactjs - 在 Material UI 主题中扩展排版
- python - 从一个多索引数据框中选择值以添加到另一个现有多索引数据框中的新列
- javascript - React js Render 在 Fetch 获取价值之前工作
- java - 如何处理硒中的不同语言?
- c# - 如何在wpf c#上删除实例
- java - 具有父子关系的对象的 Java 流分组依据
- python - 自动调整轴范围,使标记适合 Plotly
- python-3.x - 使用 gspread 或 googleapiclient 将行附加到 Google 表格