簡體   English   中英

將字符串拆分為R中的數據幀

[英]Split string to data frame in R

我有以下格式的數據字符串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 ,其中每個變量的值都是[ ]的子字符串。 例子如下圖,

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

這似乎是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])"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM