以下是代码和生成的数据帧

category <- c("East","BLANK","NorthEast","BLANK","BLANK")
subcat <- c("East","North","SW","NE","SE")
data1 <- as.data.frame(category)
data1$subcat <- subcat


**Category**  **Subcat**
East        East            
BLANK       North           
NorthEast   SW          
BLANK       NE          
BLANK       SE

东部类别包括亚类别东部和北部.东北类包括亚cat 西南、东北、东南部. 如您所见,每个类别都有空格.如何才能使类别中的第二个值是东部,第四行和第五行是东北?我在实际数据中有更多的行,所以这样做会很有帮助.

结果应该是

**Category**  **Subcat**
East           East         
*East*         North            
NorthEast      SW           
*NorthEast*    NE           
*NorthEast*    SE

推荐答案

我们可以将‘空白’转换为NA并使用fill

library(tidyr)
library(dplyr)
data1 %>%
   na_if( "BLANK") %>%
   fill(category)

-输出

    category subcat
1      East   East
2      East  North
3 NorthEast     SW
4 NorthEast     NE
5 NorthEast     SE

R相关问答推荐

用derrr在R中查找组间的重复项

如何利用模型函数在格图中添加双曲/指数曲线

我想在R中总结一个巨大的数据框架,使我只需要唯一的lat、lon、Date(Year)和Maxium Value""""""""

如何将旋转后的NetCDF转换回正常的纬度/经度网格,并使用R?

在组中添加值增加和减少的行

如何使用ggplot对堆叠条形图进行嵌套排序?

使用Facet_WRAP时更改框图中线的 colored颜色

根据现有列的名称和字符串的存在进行变异以创建多个新列

使用for循环和粘贴创建多个变量

如何将使用rhandsontable呈现的表值格式化为百分比,同时保留并显示完整的小数精度?

向R中的数据帧添加一列,该列统计另一列中每个唯一值的二进制观测值的数量

随机 Select 的非NA列的行均数

对R中的列表列执行ROW Mean操作

在同一单元格中创建包含整数和百分比的交叉表

R:使用ApexCharge更改标签在饼图中的位置

基于R中的引用将向量值替换为数据框列的值

希望解析和复制R中特定模式的数据

如何根据顺序/序列从数据框中排除值

只有当我在循环的末尾放置一条print语句时,Foreach才会给出预期的输出

对一个列表中另一个列表中的元素进行计数