wake-up-neo.com

Möglich, mehr als 100 Zeilen einer Datentabelle zu drucken?

Die data.table verfügt über eine Nice-Funktion, die die Ausgabe an den Kopf und das Ende der Tabelle unterdrückt.

Kann ich mehr als 100 Zeilen gleichzeitig anzeigen/drucken?

library(data.table)
## Convert the ubiquitous "iris" data to a data.table
dtIris = as.data.table(iris)
## Printing 100 rows is possible
dtIris[1:100, ]
## Printing 101 rows is truncated
dtIris[1:101, ]

Ich habe oft data.table-Ergebnisse, die etwas groß sind (z. B. 200 Zeilen) und die ich nur anzeigen möchte.

42
geneorama

Die Druckmethode von data.table hat ein Argument nrows:

args(data.table:::print.data.table)
function (x, nrows = 100L, digits = NULL, ...) 

Sie können hiermit steuern, wie viele Zeilen gedruckt werden:

print(dtIris, nrow=105)
.....
99:          5.1         2.5          3.0         1.1 versicolor
100:          5.7         2.8          4.1         1.3 versicolor
101:          6.3         3.3          6.0         2.5  virginica
102:          5.8         2.7          5.1         1.9  virginica
103:          7.1         3.0          5.9         2.1  virginica
104:          6.3         2.9          5.6         1.8  virginica
105:          6.5         3.0          5.8         2.2  virginica
     Sepal.Length Sepal.Width Petal.Length Petal.Width    Species
45
Andrie

View() (wie in View(iris) oder View(dtIris[1:120,])) schneidet data.tables nicht ab und kann oft schöner sein, als einen data.* an die Konsole zu drucken/auszugeben.

17
Josh O'Brien

So drucken Sie die oberen 60 und die unteren 60 Zeilen (standardmäßig sind die oberen 5 und unteren 5)

print(dtIris, topn = 60)
10
user3226167

Eine unordentliche Option, die Sie jedoch immer nach Excel exportieren können, um sie bequem anzuzeigen.

library(xlsReadWrite)
write.xls(mydata, "c:/mydata.xls")
1
Timothy Alston

Sie können es nur zum Drucken in einen data.frame konvertieren:

iris_dt = as.data.table(iris)
print(as.data.frame(iris_dt))
0
andrasz