与其他有关如何生成空数据框的问题不同。我的观点是使用其他数据框中的列值来获取一个数据框。
我有一个这样的数据框。
df1 <- data.frame(name=c("reference","result","allowed"),
value=c("m12","j6","k17"))
R> df1
name value
1 reference m12
2 result j6
3 allowed k17
在脚本中,我还需要生成一个空的数据框,其名称必须是前一个的第一列内容,并用NA值填充。两个数据帧的名称和内容都是动态生成的,因此我事先不知道。
我已经找到了解决方案,但是我的直觉告诉我这很脏,必须有更好的方法
df2 <- data.frame(header1=(df1$name),header2=NA) %>%
t() %>%
magrittr::set_colnames(df2[1, ]) %>%
as.data.frame() %>%
dplyr::filter(reference=="inexistent_value")
df2
[1] reference result allowed
<0 rows> (or 0-length row.names)