【发布时间】:2015-06-29 20:57:03
【问题描述】:
我有以下数据框
head(data)
Date Avg.Join.Delay Min.Join.Dely Max.Join.Dely ACCOUNT STB_TYPE MARKET
1 6/5/2015 500 500 500 3036831961 IPH8005 Denver
2 6/5/2015 500 500 500 3038416736 IPH8005 Denver
3 6/5/2015 500 500 500 4802192190 IPH8005 Phoenix
4 6/5/2015 500 500 500 4802193088 IPH8005 Phoenix
5 6/5/2015 500 500 500 4802795632 IPH8005 Phoenix
6 6/5/2015 500 500 500 4803611713 IPH8005 Phoenix
我想将帐号更改为城市/州 (303 = Colorado),但我不确定这种脚本的正确语法是什么。
我尝试了data$ACCOUNT[data$ACCOUNT == "303%"] <- "Colorado",但它并没有改变值。
知道如何以更改所有以xxx 开头的值的方式进行操作吗?
【问题讨论】:
-
根据显示的示例,有
3036831961而不是"303%"。如果是前3个数字,那么data$ACCOUNT[substr(data$ACCOUNT,1,3)=='303'] <- 'Colorado' -
我不知道您为什么认为
%可以用作通配符,但这不是它在 R 中的工作方式。如果它不仅仅是前 3 个字符,您可能会使用正则表达式,并且%不是正则表达式中的通配符。 -
@akrun 非常感谢!
-
% 是 SQL 中的通配符,我猜这就是 OP 的想法。