如何grep报价符号(")

时间:2015-02-05 15:14:09

标签: r data-manipulation

我有这段代码:

> head(row.names(django_c1))
[1] "10" "16" "25" "26" "28" "48"
> row.names(django_c1) <- gsub("\"", "", row.names(django_c1))
> head(row.names(django_c1))
[1] "10" "16" "25" "26" "28" "48"

我要做的是删除所有引号(&#34;),但是,它似乎无法正常工作。

我也尝试过:

row.names(django_c1) <- as.numeric(row.names(django_c1))

row.names(django_c1) <- gsub(""", "", row.names(django_c1))

但这些似乎都不起作用。如何删除引号?

1 个答案:

答案 0 :(得分:1)

您有此显示,因为rownames的结果是字符串typeof()=="character"的向量,因此R在其周围显示"以显示该事实。 如果你做head(django_c1),你就不会看到它们。

行和列名称始终是字符串,如果要通过任意索引访问,请使用list(但由于list[[2]]=0自动创建list[[1]]=NA,您可能会产生问题)或使用django_c1[str(custom_index),]

精确度:gsub('"', '', string)会完全删除字符串中的",如果它们真的是您字符串的一部分,这意味着&#39;嘿&#34;&#39 ; (显示&#34;嘿嘿#&#34;&#34;)成为&#39;嘿&#39; (显示&#34;嘿&#34;)。字符串的内容与其显示方式之间必须明确区分。