在R中将文件从因子转换为字符

时间:2012-11-20 14:17:04

标签: string r character-encoding

  

可能重复:
  R: convert data.frame columns from factors to characters

跟进question

假设我将csv文件上传到R

DF <- read.csv("C:/Users/David Rogers/Desktop/FILENAME.csv")

为了执行其他功能,我需要格式为as.character的这个文件。一般来说,我会从一开始就这样做:

DF <- read.csv("C:/Users/David Rogers/Desktop/FILENAME.csv", 
               header=TRUE, stringsAsFactors=FALSE)

这会给我我需要的东西,但我想我不想从我的桌面上传这个文件。假设我已经在R中将其作为先前操作的结果。如果我必须使用我的方法,我首先必须将文件导出为csv,然后再次导入并添加"header=TRUE, stringsAsFactors=FALSE"函数,如上例所示。

是否可以避免这种情况并简单地转换文件,而不是将其导出并重新导入?

2 个答案:

答案 0 :(得分:1)

使用levels(dataframe$variable)[dataframe$variable]进行从因素到角色的转换。

答案 1 :(得分:0)

使第一行成为列名:

colnames(DF) <- DF[1,]
DF <- DF[-1,]

将因子转换为字符(只是一个提示):

sapply(DF,class)=="factor"会为您提供一个逻辑向量来选择当前因素的列。