假设我有两个数据框:
df1 = data.frame(x=1:4,y=2:5)
df2 = data.frame(x2=1:4,y2=2:5)
如果我cbind df1和df2,一切正常
> cbind(df2,df1)
x2 y2 x y
1 1 2 1 2
2 2 3 2 3
3 3 4 3 4
4 4 5 4 5
如果我用df1的第二列cbind df2,列名将会改变:
> cbind(df2,df1[,2])
x2 y2 df1[, 2]
1 1 2 2
2 2 3 3
3 3 4 4
4 4 5 5
无论如何我可以保留列名吗?
答案 0 :(得分:3)
使用
<h1>YOUR HEADER</h1>
<h4>OTHER HEADER </h4>
<script>
document.getElementById("h4-title").innerHTML = document.getElementById("h1-title").innerHTML
</script>
当您只从data.frame中选择一列时,R默认会将其转换为矢量而矢量没有“名称”。通过使用cbind(df2, df1[,2, drop=FALSE])
,它会显示一个跟踪列名称的data.frame。
答案 1 :(得分:1)
您只需使用cbind(df2,y=df1[,2])
答案 2 :(得分:0)
以下是使用tidyverse
library(dplyr)
df1 %>%
select(y) %>%
bind_cols(df2, .)