Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/82.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/9.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_Data Cleaning - Fatal编程技术网

如何从R中的列中删除特定字符

如何从R中的列中删除特定字符,r,data-cleaning,R,Data Cleaning,我有一个属性,其中*与数值一起出现。我希望从数值中删除此*标记。我应该试试什么? 示例-将A转换为B A列-54、6*、9、0、189*、34、58* 列B-54、6、9、0、189、34、58我们可以使用gsub和fixed=TRUE,因为*是一个元字符,表示0个或更多字符。因此,我们需要fixed=TRUE(或者转义\\\*,或者将其放在方括号内[*])来获取文本值 gsub("*", "", df1$Column1, fixed = TRUE) #[1] "54" "6" "9"

我有一个属性,其中*与数值一起出现。我希望从数值中删除此*标记。我应该试试什么? 示例-将A转换为B A列-54、6*、9、0、189*、34、58*
列B-54、6、9、0、189、34、58

我们可以使用
gsub
fixed=TRUE
,因为
*
是一个元字符,表示0个或更多字符。因此,我们需要
fixed=TRUE
(或者转义
\\\*
,或者将其放在方括号内
[*]
)来获取文本值

gsub("*", "", df1$Column1, fixed = TRUE)
#[1] "54"  "6"   "9"   "0"   "189" "34"  "58" 
如果每个字符串中只有一个
*
,则
sub
就足够了

sub("*", "", df1$Column1, fixed = TRUE)
#[1] "54"  "6"   "9"   "0"   "189" "34"  "58" 

然后按.numeric转换为
numeric

as.numeric(sub("[*]", "", df1$Column1))
sub("[*]", "", df1$Column1)
#[1] "54"  "6"   "9"   "0"   "189" "34"  "58" 
as.numeric(sub("[*]", "", df1$Column1))
 sub("\\*","",A)
[1] "- 54" " 6"   " 9"   " 0"   " 189" " 34"  " 58"