我有一个列,我想根据R中的第一个和最后一个'字符串'标签来对其行值进行子集化。级别值如下:
[1] "60022 (Location; 9TH FLOOR; Snacks)"
[3] "60024 (Location; 9TH FLOOR; Snacks)"
[5] "60027 (Location; 9TH FLOOR; Snacks)"
我希望将#以及第一个字符串和最后一个字符串用';'分开。 R中是否有函数或语法可以做到这一点?
我已经尝试过此操作以仅提取第一个值,但也无法通过以下代码保留“零食”:
#updated_df_2020$Machine <- sub("([A-Za-z]+).*", "\\1", updated_df_2020$Machine)
每行的最终结果应为数字(依次为60022和零食):
[1] "60022 (Snacks)"
如果我们需要删除子字符串
sub("^(\\d+)\\b.*\\b(\\w+\\))", "\\1 (\\2", updated_df_2020$Machine)