使用separate分隔包含日期格式的列

使用separate分隔包含日期格式的列,r,tidyr,R,Tidyr,我有一个包含日期和测试值的列的数据集 Dataset ColumnA 03.01.19 3,0 02.02.18 2,0 01.03.17 1,0 我需要它们在日期列和值列中分开: Dataset date value 03.01.19 3,0 02.02.18 2,0 01.03.17 1,0 separate(Dataset, "ColumnA", into = c("date","value"),

我有一个包含日期和测试值的列的数据集

Dataset
ColumnA
03.01.19 3,0
02.02.18 2,0
01.03.17 1,0
我需要它们在日期列和值列中分开:

Dataset
date        value
03.01.19    3,0
02.02.18    2,0
01.03.17    1,0

separate(Dataset, "ColumnA", 
                  into = c("date","value"), 
                         )
但它给了我这样的新专栏,并丢弃了其余的信息:

Dataset
date        value
03          01
02          02
01          03
我如何纠正这个问题

我已经试过三次了:

separate(Dataset, "ColumnA", 
                  into = c("date","value")
我还尝试更改日期和值之间的空格并指定它 使用
sep=”“
参数

ColumnA
03.01.19/3,0
02.02.18/2,0
01.03.17/1,0

separate(Dataset, "ColumnA", 
                  into = c("date","value"), 
                     sep= "/"    )

splitstackshape
为您提供此功能,我确信还有其他软件包
cSplit
是您正在寻找的功能

cSplit(Data,"ColumnA", " ")

## OutPut

ColumnA_1 ColumnA_2
03.01.19       3,0
02.02.18       2,0
01.03.17       1,0
编辑

如后所示读取数据后,您可以在
tidyverse
中继续操作,如下所示(
rename
):

原创(纯基础):

我们可以使用
read.table

df<-read.table(text="Dataset
ColumnA
03.01.19 3,0
02.02.18 2,0
01.03.17 1,0",header=T,sep=" ",as.is=T,fill=T)

df您是否尝试过
sep=”“
?!(请注意空格)您是否可以提供一个数据示例,并使用
dput(head(df_name))
?空格分隔,或者选择字符串长度8,跳过一个,然后获取其余的。
df<-read.table(text="Dataset
ColumnA
03.01.19 3,0
02.02.18 2,0
01.03.17 1,0",header=T,sep=" ",as.is=T,fill=T)
df$ColumnA<-row.names(df)
rownames(df)<-NULL
df[2:nrow(df),]
 Dataset   ColumA
2     3,0 03.01.19
3     2,0 02.02.18
4     1,0 01.03.17