Jak wyłączyć notację naukową?


296

Mam ramkę danych z kolumną wartości p i chcę dokonać wyboru tych wartości p.

> pvalues_anova
[1] 9.693919e-01 9.781728e-01 9.918415e-01 9.716883e-01 1.667183e-02
[6] 9.952762e-02 5.386854e-01 9.997699e-01 8.714044e-01 7.211856e-01
[11] 9.536330e-01 9.239667e-01 9.645590e-01 9.478572e-01 6.243775e-01
[16] 5.608563e-01 1.371190e-04 9.601970e-01 9.988648e-01 9.698365e-01
[21] 2.795891e-06 1.290176e-01 7.125751e-01 5.193604e-01 4.835312e-04

Sposób wyboru:

anovatest<- results[ - which(results$pvalues_anova < 0.8) ,]

Funkcja działa naprawdę dobrze, jeśli użyję jej w R. Ale jeśli uruchomię ją w innej aplikacji (galaktyce), liczby, które nie mają e-01np., 4.835312e-04Nie zostaną wyrzucone.

Czy istnieje inny sposób notowania wartości p, na przykład 0.0004835312zamiast 4.835312e-04?



To jest duplikat tego.
SabreWolfy

Odpowiedzi:


541

Za pomocą tego kodu możesz skutecznie usunąć notację naukową podczas drukowania:

options(scipen=999)

55
Jeśli chcesz przywrócić go z powrotem jako ja: =), domyślnie scipenjest to 0(patrz getOption("scipen"))
TMS

32
Czy jest jakaś możliwość użycia scipentylko jednego polecenia, na przykład w print(x, dig = 6)? Takich jak summary(m1, scipen = 999)lub print(x, scipen = 999)? To było by fajne. Ponieważ ustawienie globalne może być problematyczne.
TMS

30
@TMS: Odpowiedź jest tutaj: stackoverflow.com/questions/21509346/… : format(functionResult, scientific=FALSE);lubas.integer(functionResult);
iNyar

2
@TMS Jak domyślnie go wyłączyć, aby po otwarciu nowej sesji nie trzeba było powtarzać polecenia?
Herman Toothrot

4
Domyślne zachowanie R, które chce uprościć twoje życie, czyni je piekłem
zakrapovic
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.