我具有以下格式的数据字符串str1
;
str1 <- "([0.1,0.2,0.3,......],[timestamp('2019-03-09'),timestamp('2019-03-09'),timestamp('2019-03-09'), .....],[0.1,0.2,0.3,......],[true,false,true,false,.....])"
我需要将此字符串转换为数据帧df
,其中每个变量的值都是[
]
的by子字符串。示例如下所示,
df
A B C D
0.1 timestamp('2019-03-09') 0.1 True
0.2 timestamp('2019-03-09') 0.2 False
0.3 timestamp('2019-03-09') 0.3 True
0.4 timestamp('2019-03-09') 0.4 False
答案 0 :(得分:3)
这似乎是Python代码...也许最好用Python初始化并导出为csv
或类似的代码?
在任何地方,使用R都有一些原始之处:
library(magrittr)
strsplit(str1, "],[", fixed = TRUE)[[1]] %>%
gsub("^\\(\\[|\\]\\)$", "", .) %>%
lapply(strsplit, ",") %>%
as.data.frame() %>%
setNames(LETTERS[1:4])
# A B C D
# 1 0.1 timestamp('2019-03-09') 0.1 true
# 2 0.2 timestamp('2019-03-09') 0.2 false
# 3 0.3 timestamp('2019-03-09') 0.3 true
# 4 0.4 timestamp('2019-03-09') 0.4 false
数据
str1 <- "([0.1,0.2,0.3,0.4],[timestamp('2019-03-09'),timestamp('2019-03-09'),timestamp('2019-03-09'), timestamp('2019-03-09')],[0.1,0.2,0.3,0.4],[true,false,true,false])"