R 拆分通过web抓取生成的tibble()的内容

R 拆分通过web抓取生成的tibble()的内容,r,dplyr,R,Dplyr,我有以下样本数据: library(tidyverse) df <- structure(list(date = c("3/31/19\n10:00 PM", "3/31/19\n11:30 PM", "4/1/19\n12:00 AM", "4/1/19\n11:00 PM", "4/1/19\n11:08 PM", "4/1/19\n11:08 PM", "4/2/19\n12:00 AM", "4/2/19\n12:30 AM")), .Names = ".", row.names

我有以下样本数据:

library(tidyverse)

df <- structure(list(date = c("3/31/19\n10:00 PM", "3/31/19\n11:30 PM", "4/1/19\n12:00 AM", "4/1/19\n11:00 PM", "4/1/19\n11:08 PM", "4/1/19\n11:08 PM", "4/2/19\n12:00 AM", "4/2/19\n12:30 AM")), .Names = ".", row.names = c(NA, -8L), class = c("tbl_df", "tbl", "data.frame"))
到两个单独的列,分别命名为
日期
时间
-

date       time
3/31/19    10:00 PM

\n
上拆分未产生任何结果。这是因为值是
,而不是简单的字符串吗

将“df”中的单列命名为
重命名列nam,然后
将其分离为两列,其中
sep
指定为
\n

library(tidyverse)
df %>%
   rename(X1 = ".") %>%
   # if there are multiple columns, use rename_all
   #rename_all(~ paste0("X", seq_along(.))) %>% 
   separate(X1, into = c("date", "time"), sep="\n")
# A tibble: 8 x 2
#  date    time    
#  <chr>   <chr>   
#1 3/31/19 10:00 PM
#2 3/31/19 11:30 PM
#3 4/1/19  12:00 AM
#4 4/1/19  11:00 PM
#5 4/1/19  11:08 PM
#6 4/1/19  11:08 PM
#7 4/2/19  12:00 AM
#8 4/2/19  12:30 AM
out <- read.csv(text = paste(sub("\n", ",", df[[1]]), collapse="\n"), 
             header = FALSE, col.names = c("date", "time"))
我试过这个

library(tidyverse)

df <- df %>% separate ('.', c('Date', 'Time'), sep = '\n')
库(tidyverse)
df%单独('.',c('Date','Time'),sep='\n')

它工作得很好。你能分享你尝试过但不起作用的代码吗?

不是打字错误-当我刮取数据并转换成
tibble()
时,它给了我奇怪的信息enough@papelr好的,您可以在
tibble(Col=)
library(tidyverse)

df <- df %>% separate ('.', c('Date', 'Time'), sep = '\n')