将数据导入R时如何使所有列出现在同一行?

时间:2011-03-24 15:51:44

标签: r

当我尝试导入超过 6000行 9列的文本文件时,输出会在同一行显示 8列而第9个低于所有其他人。此外,我的控制台中只显示最后500行,其中只包含 UnadjClose 。我该怎么做?

我试过了:Dataset<-read.table("AD.TXT",sep=",",header=TRUE)

档案:Text file to be imported

4 个答案:

答案 0 :(得分:4)

这听起来像是根据宽度将它打印到控制台的内容。默认情况下,R换行为80,您可以使用options(width = XXX)覆盖,其中XXX代表您所需的宽度。 ?options有更多信息。

为确保您的数据集已正确读取,我建议您使用str()来返回数据的特征。请考虑以下玩具数据集:

Dataset <- data.frame(a = rnorm(6000), b = rnorm(6000), c = rnorm(6000)
    , d  = rnorm(6000), e  = rnorm(6000), f  = rnorm(6000), g = rnorm(6000)
    , h =rnorm(6000), i  = rnorm(6000))

> str(Dataset)
(Dataset)
'data.frame':   6000 obs. of  9 variables:
 $ a: num  -0.5784 -0.0951 0.4199 -0.0992 -1.6443 ...
 $ b: num  -2.41 -1.72 0.8 0.57 2.32 ...
 $ c: num  -1.195 -0.661 -1.071 0.449 0.94 ...
 $ d: num  0.114 2.255 0.67 -1.301 -0.792 ...
 $ e: num  0.841 -0.0103 -0.9778 -0.6208 1.0317 ...
 $ f: num  -0.716 -0.803 0.929 -1.967 -0.712 ...
 $ g: num  -1.066 2.407 0.698 1.465 -0.547 ...
 $ h: num  -0.6507 0.1766 -0.0675 0.2491 -0.4547 ...
 $ i: num  0.297 -0.233 -0.479 -0.66 0.214 ...

如果您想以更直观的方式检查数据,请尝试edit(Dataset)View(Dataset)

答案 1 :(得分:2)

您的意思是,在您阅读数据后打印数据时,并非所有内容都打印出来,并且最后一列打印在其他列下方而不是右侧?

对于印刷来说重要的是R认为线条的宽度是什么,请参阅?options并查看“宽度”部分,有时这个数字会自动更新,有时它不会更新,您需要手动完成。 'max.print'选项也可能是有意义的。您还可以查看正在使用的打印功能的帮助(可能隐式),以查看是否有其他选项(位数等)可以设置以使打印更容易阅读。

如果您只是想查看数据并且可以访问所有数据,那么我建议使用“查看”功能而不是打印它。

答案 2 :(得分:2)

这是对的。控制台上的显示不是内部存储方式。如果您真的想要在控制台中更改外观,则必须设置选项,例如:

op <- options("width"=200) 
      # to determine how many columns are printed on the screen
Dataset
options(op)

最好像其他人建议的那样使用edit()View(),或者只是在EXCEL中打开您的文件。对不起发誓...

答案 3 :(得分:1)

# auto width adjustment
.adjustWidth <- function(...){
      options(width=Sys.getenv("COLUMNS"))
      TRUE
}

.adjustWidthCallBack <- addTaskCallback(.adjustWidth)

就是这样,最后我拥有它。