使用R中的data.frame
函数,我正在创建一个示例数据集。但是,带有字符串的向量将转换为 factor 列。
如何在数据集中生成带字符串的向量(例如var1
)成为字符列?
当前代码
df = data.frame(var1 = c("1","2","3","4"),
var2 = c(1,2,3,4))
产生的结果
如下所示,var1
是一个因素。我需要var1
才能拥有chr
类。
> str(df)
'data.frame': 4 obs. of 2 variables:
$ var1 : Factor w/ 4 levels "1","2","3","4": 1 2 3 4
$ var2 : num 1 2 3 4
故障排除
根据此post,我尝试添加as.character
,但var1
仍然是一个因素。
df = data.frame(var1 = as.character(c("1","2","3","4")),
var2 = c(1,2,3,4))
答案 0 :(得分:2)
stringsAsFactors
是你的朋友。即:
df = data.frame(var1 = c("1","2","3","4"),var2 = c(1,2,3,4),stringsAsFactors = F)
屈服:
> str(df)
'data.frame': 4 obs. of 2 variables:
$ var1: chr "1" "2" "3" "4"
$ var2: num 1 2 3 4
答案 1 :(得分:0)
根据评论,添加参数stringsAsFactors=FALSE
将创建字符变量而不是因子变量。