0

我正在从 CSV 文件中读取它,我需要编写一个生成最终数据帧的函数,所以给定一个特定的条目,我有

x [1] {2,4,5,11,12}

139 个级别:{1,2,3,4,5,6,7,12,17} ...

我可以将其更改为 x2<-as.character(x)

这给了我

x [1] "{2,4,5,11,12}"

我如何提取 2,4,5,11,12 出来?(有5个元素)

我尝试使用各种方式,例如 gsub,但无济于事

谁能帮帮我吗?

4

1 回答 1

2

听起来您正在尝试导入包含数组的数据库表。由于 R 不知道此类数据结构,因此它将它们视为文本。

尝试这个。我假设有问题的列是x. 结果将是一个列表,每个元素都是表中该行的数组值向量。

dat <- read.csv("<file>", stringsAsFactors=FALSE)
dat$x <- strsplit(gsub("\\{(.*)\\}", "\\1", dat$x), ",")
于 2013-06-19T10:17:34.657 回答