【发布时间】:2015-04-21 12:29:35
【问题描述】:
我的问题涉及如何根据正则表达式的结果在 R 中的数据框中创建一个新变量。 以下是数据的最小示例:
df <- data.frame(model=c("Legacy 2.0 BG5 B4 AUTO","Legacy 2.0 BH5 AT","Legacy 2.0i CVT Non Leather","Legacy 2.0i CVT","Legacy 2.0 BL5 AUTO B4",
"Legacy 2.0 BP5 AUTO","Legacy 2.0 BM5 AUTO CVT"), CRSP=c(3450000,3365000,4950000,5250000,4787526,3550000,5235000))
df
model CRSP
1 Legacy 2.0 BG5 B4 AUTO 3450000
2 Legacy 2.0 BH5 AT 3365000
3 Legacy 2.0i CVT Non Leather 4950000
4 Legacy 2.0i CVT 5250000
5 Legacy 2.0 BL5 AUTO B4 4787526
6 Legacy 2.0 BP5 AUTO 3550000
7 Legacy 2.0 BM5 AUTO CVT 5235000
我想创建一个新变量'chassis',它的值是相应的'model'变量字符串的第三个元素,因此以:
df
model CRSP chassis
1 Legacy 2.0 BG5 B4 AUTO 3450000 BG5
2 Legacy 2.0 BH5 AT 3365000 BH5
3 Legacy 2.0i CVT Non Leather 4950000 CVT
4 Legacy 2.0i CVT 5250000 CVT
5 Legacy 2.0 BL5 AUTO B4 4787526 BL5
6 Legacy 2.0 BP5 AUTO 3550000 BP5
7 Legacy 2.0 BM5 AUTO CVT 5235000 BM5
我需要找到一种方法来提取每一行中的适当元素并将它们放入新变量中。 任何帮助将不胜感激。
【问题讨论】: