我有一个包含 30 个数据帧(约 1000 行 X 3 列)的列表 listDF
。在每一列的最后一列中,我都有一个复合字符,如下所示:
Date Origin Chemical
28/10/2012 Artificial nuclides Cs-137__Sea
28/10/2012 Natural nuclides Ra-226__Clouds
28/10/2012 Natural nuclides Ra-228__Sands
28/10/2012 Natural nuclides Th-228__Sea
28/10/2012 Artificial nuclides Cs-137__Rocks
对于每个 df 的最后一列,我怎样才能简单地删除“__Sea”、“__Clouds”...并只保留化学名称?
最佳答案
这也可以通过 base R
中的 trimws
完成
listDF <- lapply(listDF, transform,
Chemical = trimws(Chemical, whitespace = "__.*"))
或者在 tidyverse
library(stringr)
library(purrr)
library(dplyr)
listDF <- map(listDF, mutate, Chemical = str_remove(Chemical, "__.*"))
关于从数据框列表的最后一列中删除字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71020612/