在 R 中,如何初始化空数据框同时防止某些字符列成为因素?
In R, how can I initialise empty data frame while preventing some character columns from being factors?
我想初始化一个数据框,使其包含各种列,一些是字符向量但不是因子,而另一些是因子。
在这种情况下,我不能使用 stringsAsFactors
,因为那样会根据其值将所有列设置为因子或字符。
我能做什么?
不清楚您所说的 "empty" 数据框是什么意思。但是您可以初始化没有任何行但具有明确定义列和列类型的数据框,如下所示。
empty_df <- data.frame(a = numeric(),
b = character(),
c = logical(),
d = integer(),
stringsAsFactors = FALSE)
str(empty_df)
#'data.frame': 0 obs. of 4 variables:
#$ a: num
#$ b: chr
#$ c: logi
#$ d: int
您可以先设置 stringsAsFactors = FALSE
,然后按照其他人的建议将列转换为 facter。
我想初始化一个数据框,使其包含各种列,一些是字符向量但不是因子,而另一些是因子。
在这种情况下,我不能使用 stringsAsFactors
,因为那样会根据其值将所有列设置为因子或字符。
我能做什么?
不清楚您所说的 "empty" 数据框是什么意思。但是您可以初始化没有任何行但具有明确定义列和列类型的数据框,如下所示。
empty_df <- data.frame(a = numeric(),
b = character(),
c = logical(),
d = integer(),
stringsAsFactors = FALSE)
str(empty_df)
#'data.frame': 0 obs. of 4 variables:
#$ a: num
#$ b: chr
#$ c: logi
#$ d: int
您可以先设置 stringsAsFactors = FALSE
,然后按照其他人的建议将列转换为 facter。