【发布时间】:2015-09-15 14:11:39
【问题描述】:
我有一个带有“计算”列的数据框,可以通过以下代码重现:
a <- data.frame(Id = c(1:3), Calculation = c('[489]/100','[4771]+[4777]+[5127]+[5357]+[5597]+[1044])/[463]','[1044]/[463]'))
> str(a)
'data.frame': 3 obs. of 2 variables:
$ Id : int 1 2 3
$ Calculation: Factor w/ 3 levels "[1044]/[463]",..: 3 2 1
请注意,“计算”列中有两种类型的数字:大多数都用括号括起来,但有些(在本例中为数字 100)不是(这在我的应用程序中具有含义)。
我想做的是提取出现在计算列中的所有不同数字,以返回一个带有这些数字并集的向量。理想情况下,我希望能够区分括号内的数字和不在括号内的数字。这一步并不那么重要(如果它使它变得复杂),因为不在括号之间的数字很少,我可以手动检测它们。因此,在这种情况下,所需的输出将是:
b = c(489,4771,4777,5127,5357,5597,1044,463)
提前致谢
【问题讨论】:
-
是的,我认为您的解决方案会输出所有数字,我必须添加一个 unique() 才能获得不同的数字。非常感谢
标签: r string text-extraction