我有两个不同的数据框,它们没有任何公共列来连接它们。有没有办法从两个不同的数据框创建一个新的数据框而没有任何公共列?其中一个数据框包含天数值。
第一个数据帧的示例:
day
2000-01-01 00:00:00
2000-01-01 00:01:00
2000-01-01 00:02:00
第二个数据框的示例:
price
1
2
3
新数据框的结果:
day price
2000-01-01 00:00:00 1
2000-01-01 00:01:00 2
2000-01-01 00:02:00 3
答案 0 :(得分:2)
data.frame
怎么样? - :
data.frame(day,price)
这是一个例子。两个输入数据框:
> a
x y
1 1 a
2 2 b
3 3 c
4 4 d
5 5 e
6 6 f
7 7 g
8 8 h
9 9 i
10 10 j
> b
v w
1 14 FALSE
2 5 TRUE
3 8 TRUE
4 4 TRUE
5 17 FALSE
6 5 TRUE
7 15 FALSE
8 11 FALSE
9 15 FALSE
10 9 TRUE
以下是data.frame
的工作原理:
> data.frame(a,b)
x y v w
1 1 a 14 FALSE
2 2 b 5 TRUE
3 3 c 8 TRUE
4 4 d 4 TRUE
5 5 e 17 FALSE
6 6 f 5 TRUE
7 7 g 15 FALSE
8 8 h 11 FALSE
9 9 i 15 FALSE
10 10 j 9 TRUE
纯
答案 1 :(得分:1)
cbind
怎么样?
dd1 = data.frame(x1 = runif(10), y1=runif(10))
dd2 = data.frame(x2 = runif(10), y2=runif(10))
所以
dd = cbind(dd1, dd2)
答案 2 :(得分:0)
以下是data.table
方法,可能对较大的data.frame
有用:
library(data.table)
### if converting from data.frame:
df1 <- data.frame(a=c(1,2,3))
dt1 <- data.table(df1)
### or more simply:
dt1 <- data.table(a=c(1,2,3))
dt2 <- data.table(b=c(4,5,6))
dt3 <- data.table(dt1,dt2)
dt3
给出:
a b
1: 1 4
2: 2 5
3: 3 6