Le data.table a une fonctionnalité intéressante qui supprime la sortie vers la tête et la queue de la table.
Est-il possible de visualiser / imprimer plus de 100 lignes à la fois?
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, ]
J’ai souvent des résultats de data.table assez importants (par exemple 200 lignes) que je veux simplement voir.
La méthode print de data.table
a un argument nrows
:
args(data.table:::print.data.table) function (x, nrows = 100L, digits = NULL, ...)
Vous pouvez l’utiliser pour contrôler le nombre de lignes imprimées:
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
View()
(comme dans View(iris)
ou View(dtIris[1:120,])
) ne tronque pas data.table
s, et peut souvent être plus agréable que d’imprimer / cracher des data.*
data.table
la console.
Pour imprimer les 60 premières lignes et les 60 dernières lignes (la valeur par défaut est 5 et 5):
print(dtIris, topn = 60)
Une option désordonnée, mais vous pouvez toujours l’exporter dans Excel pour le voir avec une excellente commodité.
library(xlsReadWrite) write.xls(mydata, "c:/mydata.xls")
Vous pouvez le convertir en data.frame uniquement pour l’impression:
iris_dt = as.data.table(iris) print(as.data.frame(iris_dt))