Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R:我应该如何删除以问号开头的图案_R - Fatal编程技术网

R:我应该如何删除以问号开头的图案

R:我应该如何删除以问号开头的图案,r,R,我有一个长期困扰我的问题:我应该如何删除以问号开头的模式 例如: ## dataframe named test x y 1 gffsd?lang=dfs 2 sdldfsd?lang=gsd 3 eoriwesd?lang=fh 4 eriywo?lang=asd 我想要的是: x y 1 gffsd 2 sdldfsd 3 eoriwesd 4 eriywo 我尝试了几种方法,包括: test$y = sapply(strsplit(test$y, '?'), head, 1) test

我有一个长期困扰我的问题:我应该如何删除以问号开头的模式

例如:

## dataframe named test
x y
1 gffsd?lang=dfs
2 sdldfsd?lang=gsd
3 eoriwesd?lang=fh
4 eriywo?lang=asd
我想要的是:

x y
1 gffsd
2 sdldfsd
3 eoriwesd
4 eriywo
我尝试了几种方法,包括:

test$y = sapply(strsplit(test$y, '?'), head, 1)
test$y = sapply(strsplit(test$y, '?lang='), head, 1)
gsub("?",NA, test$y, fixed = TRUE)
不幸的是,他们都失败了

提前谢谢


顺便说一句,任何人都知道如何将“®”替换为“-”

gsub
可以使用正确的正则表达式

test$y = gsub("\\?.*", "", test$y)
test
  x        y
1 1    gffsd
2 2  sdldfsd
3 3 eoriwesd
4 4   eriywo
您需要避开问号“\\?”,“*”表示您也要删除问号后面的所有内容

您的第二个问题也是
gsub

string = 'anybody knows how to replace ® to -'
gsub("®",  "-", string)
[1] "anybody knows how to replace - to -"

gsub
可以使用正确的正则表达式

test$y = gsub("\\?.*", "", test$y)
test
  x        y
1 1    gffsd
2 2  sdldfsd
3 3 eoriwesd
4 4   eriywo
您需要避开问号“\\?”,“*”表示您也要删除问号后面的所有内容

您的第二个问题也是
gsub

string = 'anybody knows how to replace ® to -'
gsub("®",  "-", string)
[1] "anybody knows how to replace - to -"

你做过一些调查吗?有这么多的例子,等等等等。。StackOverflow不是谷歌搜索服务。我是这样做的,我使用的方法是从搜索结果中得到的,你可以看到,它们不起作用。我在搜索结果中没有看到任何与
sapply
相关的内容。当我用谷歌搜索时,大多数问题只涉及向量,而不是数据框,所以我修改了一点为sapply。我假设test$y=sapply(strsplit(test$y,“?”,fixed=TRUE),head,1)你能做些研究吗?有这么多的例子,等等等等。。StackOverflow不是谷歌搜索服务。我是这样做的,我使用的方法是从搜索结果中得到的,你可以看到,它们不起作用。我在搜索结果中没有看到任何与
sapply
相关的内容。当我用谷歌搜索时,大多数问题只涉及向量,而不是数据框,所以我稍微修改了一点,使之成为
sapply
。我假设
test$y=sapply(strsplit(test$y,“?”,fixed=TRUE),head,1)
工作组会识别“®”!我想我需要为这个符号使用一些特殊的字符串。非常感谢!很好的解释。所以R将识别“®”!我想我需要为这个符号使用一些特殊的字符串。非常感谢!很好的解释。