在R

时间:2017-12-17 21:04:23

标签: r dataframe view

我正在运行一个模拟模型,它创建一个大数据框作为输出,每列对应于特定变量的时间序列:

data5<-as.data.frame(simulation3$baseline)

有时我想查看此数据框的子集,尤其是特定列,以便了解输出。为此,我正在使用像这样的视图功能

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]))时会出现恼人的显示问题,我得到的内容看起来像这样:

Example 1

正如您所看到的,表的顶部通常包含数据集中变量的名称,而不是包含变量所采用的所有值的字符串。如果我选择2列或更多列,则不会出现此问题:

Example 2

有谁知道如何摆脱这个问题?是否有一些争论我可以提供给View以确保当我要求它显示单个列时它的行为很好?

1 个答案:

答案 0 :(得分:3)

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