这个问题在这里已有答案:
我正在运行一个模拟模型,它创建一个大数据框作为其输出,每列对应于特定变量的时间序列:
data5<-as.data.frame(simulation3$baseline)
有时我想查看此数据框的子集,尤其是特定列,以便了解输出。为此,我正在使用View-function
View(data5[1:100,1])
例如,如果我希望看到第1列的前100行。或者,我有时也会使用时间序列的名称执行类似的操作:
timeframe=1:100
toAnalyse=c("u","u_n","u_e","u_nw")
View(data5[timeframe,toAnalyse])
在任何一种情况下,当我试图单独查看单个列时(例如使用View(data5 [1:100,1]))时会出现恼人的显示问题,我得到的内容如下所示:
正如您所看到的,表的顶部通常包含数据集中变量的名称,而不是包含变量所采用的所有值的字符串。如果我选择2列或更多列,则不会出现此问题:
有谁知道如何摆脱这个问题?是否有一些争论我可以提供给View以确保当我要求它只显示一个列时它表现得很好?
View(data5[1:100,1, drop=FALSE])
当您访问数据框的单个列时,它将转换为向量,drop=FALSE
会阻止该列并保留列名。
例如:
> df
n s b
1 2 aa TRUE
2 3 bb TRUE
3 5 cc TRUE
> df[, 1]
[1] 2 3 5
> df[, 1, drop=FALSE]
n
1 2
2 3
3 5