用四到二的数字将数据帧中的行从格式中分离出来



我一直在想如何解决这个问题,但没有任何结果。我想将第一个数据帧转换为下面的第二个数据帧。从";0000〃;至";01〃;这意味着我想去掉最后两个数字。

#1
Code    Region   Party
0176      US       M
0176      US       A
0176      US       L
0176      US       T
0176      US       S
#With 8 000 more rows
#2
Code    Region   Party
01        US       M
01        US       A
01        US       L
01        US       T
01        US       S
#With 8 000 more rows

我相信separate(Code)正在进行中。值得一提的是,除了美国,还有更多的地区。

您还可以使用以下代码从每个元素中删除最后2个字符,如下所示:

df$Code <- substr(df$Code,1,nchar(df$Code)-2)

输出:

Code Region Party
1   01     US     M
2   01     US     A
3   01     US     L
4   01     US     T
5   01     US     S

使用Base Rgsub函数将去掉最后两个数字

df$Code <- gsub("\d{2}$" , "" , df$Code)

使用{tidyverse}包,您可以使用mutate(df1, Code = str_sub(Code, 1, 2))来完成此操作

最新更新