Jak uniknąć ostrzeżenia r: osiągnięto getoption(„max.print”)


Komunikat ostrzegawczy, który możesz napotkać w R, to:

 [ reached getOption("max.print") -- omitted 502 rows ]

Ten komunikat pojawia się przy próbie wydrukowania więcej niż 1000 wartości jednocześnie w RStudio.

Domyślnie RStudio umożliwia wydrukowanie tylko 1000 wartości na raz. Możesz jednak łatwo zwiększyć ten limit, korzystając z jednej z następujących metod:

Metoda 1: Zwiększ limit do określonej wartości

 #increase print limit to 2000 values
options( max.print = 2000 )

Metoda 2: Zwiększ limit do maksymalnej kwoty dozwolonej przez maszynę

 #increase print limit to max allowed by your machine
options(max. print = .Machine$integer. max )

Poniższy przykład pokazuje, jak zastosować te metody w praktyce.

Przykład: zwiększ limit drukowania w R

Załóżmy, że tworzymy ramkę danych w R z 1002 wierszami i 2 kolumnami:

 #make this example reproducible
set. seeds (0)

#create data frame
df <- data. frame (x=runif(1002),
                 y=runif(1002))

#view head of data frame
head(df)

          xy
1 0.8966972 0.68486090
2 0.2655087 0.38328339
3 0.3721239 0.95498800
4 0.5728534 0.11835658
5 0.9082078 0.03910006
6 0.2016819 0.50450503

Następnie załóżmy, że próbujemy wydrukować całą ramkę danych w RStudio:

 #attempt to print entire data frame
df

Możemy wyświetlić tylko pierwsze 500 wierszy (tj. pierwsze 1000 wartości) i pojawia się ostrzeżenie, że 502 wiersze zostały pominięte.

Jeśli jednak skorzystamy z funkcji max.print to możemy zwiększyć limit wydruku do 2500 wartości:

 #increase print limit to 2500 values
options( max.print = 2500 )

#attempt to print entire data frame again
df

Tym razem jesteśmy w stanie wydrukować wszystkie 1002 linie ramki danych i nie otrzymujemy żadnych komunikatów ostrzegawczych, ponieważ zwiększyliśmy limit wydruku.

Jeśli chcemy posunąć się do skrajności i ustawić limit wydruku na maksymalną liczbę wartości, na jaką pozwala nasza maszyna, możemy zastosować następującą składnię:

 #increase print limit to max allowed by your machine
options(max. print = .Machine$integer. max )

Tej opcji należy jednak używać tylko wtedy, gdy koniecznie musisz mieć możliwość wyświetlenia każdego wiersza w ramce danych, ponieważ w przypadku bardzo dużych danych może to zająć dużo czasu.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak rozwiązać inne typowe błędy w języku R:

Jak naprawić w R: Nazwy nie pasują do poprzednich nazw
Jak naprawić w R: długość dłuższego obiektu nie jest wielokrotnością długości krótszego obiektu
Jak naprawić w R: kontrasty można zastosować tylko do czynników o 2 lub więcej poziomach

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *