R 将数据分成不同的列
我想把下面的数据分开R 将数据分成不同的列,r,R,我想把下面的数据分开 {"1": 3.0, "5": 3.0} 并希望将它们分成四个不同的列 1 3.0. 5 3.0 这里有一个选项,使用str\u extract仅提取数字元素,然后使用map\u df将其转换为tbl\u df library(tidyverse) str_extract_all(str1, "[0-9.]+") %>% map_df(~as.numeric(.x) %>% t %>%
{"1": 3.0, "5": 3.0}
并希望将它们分成四个不同的列
1 3.0. 5 3.0
这里有一个选项,使用
str\u extract
仅提取数字元素,然后使用map\u df
将其转换为tbl\u df
library(tidyverse)
str_extract_all(str1, "[0-9.]+") %>%
map_df(~as.numeric(.x) %>%
t %>%
as.tibble)
# A tibble: 1 x 4
# V1 V2 V3 V4
# <dbl> <dbl> <dbl> <dbl>
#1 1.00 3.00 5.00 3.00
库(tidyverse)
str_extract_all(str1,“[0-9.]+”)%>%
map_df(~as.numeric(.x)%>%
t%>%
as.tibble)
#一个tibble:1 x 4
#V1 V2 V3 V4
#
#1 1.00 3.00 5.00 3.00
数据
str1您可以先使用gsub
删除所有不必要的字符,然后使用read.table
str1 <- '{"1": 3.01, "5.2": 3.0}'
read.table(text=gsub("[{},:]"," ",str1))
V1 V2 V3 V4
1 1 3.01 5.2 3
str1正常。现在你的问题是什么?你有一个完整的JSON文件还是一个简单的字符串?如果稍后,为什么要将简单字符串转换为列?你能提供你想要的输出吗?或者只是strsplit(“{”1:3.0,“5:3.0}',“[^0-9.]+”[[1]]
非常感谢。。这就像一个专业的。。。我不知道为什么有人否决了我。我问错问题了吗?
str1 <- '{"1": 3.01, "5.2": 3.0}'
read.table(text=gsub("[{},:]"," ",str1))
V1 V2 V3 V4
1 1 3.01 5.2 3