Operator „[<-” w RStudio i R

Przez przypadek spotkałem dziwne zachowanie"[<-" operator. Zachowuje się inaczej w zależności od kolejności połączeń i tego, czy korzystam z RStudio, czy tylko zwykłego RGui. Przedstawię się jasno na przykładzie.

x <- 1:10
"[<-"(x, 1, 111)
x[5] <- 123

O ile wiem, pierwsze przypisanie nie powinno się zmienićx (a może się mylę?), a drugi powinien. W rzeczywistości wynikiem powyższych operacji jest

x
[1]  1  2  3  4  123  6  7  8  9 10

Jednak gdy wykonujemy te operacje w innej kolejności, wyniki są różne ix zmienił się! Znacząco:

x <- 1:10
x[5] <- 123
"[<-"(x, 1, 111)
x
[1] 111   2   3   4   123   6   7   8   9  10

Ale dzieje się to tylko wtedy, gdy używam zwykłego R! W RStudio zachowanie jest takie samo w obu opcjach. Sprawdziłem to na dwóch komputerach (jeden z Fedorą z Win7) i sytuacja wygląda dokładnie tak samo. Znam wersję „funkcjonalną” ("[<-"(x..)) prawdopodobnie nigdy nie jest używany, ale jestem bardzo ciekawy, dlaczego tak się dzieje. Czy ktoś mógłby to wyjaśnić?

==========================

EDYCJA: Ok, więc z komentarzy wynika, że ​​powodem było tox <- 1:10 ma typ „liczba całkowita” i po zastąpieniux[5] <- 123 to „podwójne”. Pozostaje jednak pytanie, dlaczego zachowanie w RStudio jest inne? Ponownie uruchamiam sesję R i nic nie zmienia.

questionAnswers(1)

yourAnswerToTheQuestion