从R中的data.frame中删除引号("")

时间:2014-01-24 16:54:16

标签: r

我有一个包含多个列的data.frame,它们都是字符类。所有值都是双引号,我想删除这些引号。

实施例

df1      df2
"1203"   "Name1"
"2304"   "Name2"

2 个答案:

答案 0 :(得分:15)

数据框的print()方法有quote=选项,您可以将其设置为FALSE

print.data.frame(data.frame(x=c("Hello", "World")), 
                 quote=FALSE)
#       x
# 1 Hello
# 2 World

另见?print.data.frame(=帮助)

修改

关于以下评论中的dput个数据:

as.data.frame(sapply(df, function(x) gsub("\"", "", x)))

答案 1 :(得分:0)

LukeA 的回答将我的整个数据框转换为字符,所以我实现了这个修改,它只修改了字符类的列:

character_cols = which(sapply(x, class) == 'character')

for(i in 1:length(character_cols)) {
  a = character_cols[i]
  x[,a] = gsub("\"", "", x[,a])
}