English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
O aprendizado de um novo idioma geralmente começa com a execução do programa "Hello, World!". O código do programa "Hello, World!" em R é o seguinte:
myString- "Hello, World!" print(myString)
Os exemplos acima atribuem a string "Hello, World!" à variável myString e, em seguida, usam a função print() para exibir.
Atenção:A atribuição de valores no idioma R usa o sinal de seta esquerda '<='- símbolo, embora algumas versões mais novas também suportem o sinal de igual '=' =.
O nome de variável válido no idioma R é composto por letras, números, pontos '.' ou sublinhados _
O nome da variável começa com uma letra ou ponto.
Nome da variável | Correto? | Razão |
---|---|---|
nome_variável2. | Correto | Começa com um caractere, e é composto por letras, números, sublinhados _ e pontos '.' |
nome_variável% | Erro | O símbolo '%' é ilegal |
2nome_variável | Erro | Não pode começar com um número |
.nome_variável, nome.variável | Correto | Pode começar com o ponto '.', mas atenção, o ponto '.' no início não pode ser seguido por um número |
.2nome_variável | Erro | O ponto '.' no início não pode ser seguido por um número |
_nome_variável | Erro | Não pode começar com o sublinhado _ |
A atribuição de valores na versão mais recente do idioma R pode usar o sinal de seta esquerda '<='-、igual a、seta para a direita -> Atribuição:
# Usando o sinal de igual = para atribuição > var.1 = c(0,1,2,3) > print(var.1) [1] 0 1 2 3 # Usando o sinal de seta para a esquerda <-Atribuição > var.2 <- c("learn","R") > print(var.2) [1] "learn" "R" # Usando o sinal de seta para a direita <- Atribuição > c(TRUE,1) -> var.3 > print(var.3) [1] 1 1
Para verificar as variáveis definidas, podemos usar ls() Função:
> print(ls()) [1] "var.1" "var.2" "var.3"
Para excluir variáveis, podemos usar rm() Função:
> rm(var.3) > print(ls()) [1] "var.1" "var.2" >
No capítulo anterior, aprendemos como instalar o ambiente de programação do R, e a seguir, apresentaremos a programação interativa e de script de arquivo do R.
Precisamos apenas executar o comando R na linha de comando para entrar na janela de programação interativa:
R
Após executar este comando, será aberto o interpretador do R, onde podemos digitar o código após o símbolo >.
Os comandos interativos podem ser encerrados digitando q():
> q() Salvar imagem do ambiente de trabalho? [y/n/c]: y
O sufixo de arquivo do R é .R.
A seguir, criaremos um w3codebox-test.R arquivo: o código é o seguinte:
A seguir, usaremos o Rscript na janela de linha de comando para executar o script:
Rscript w3codebox-test.R
Os resultados da saída são os seguintes:
[1] "w3codebox"
A função print() é a função de saída do R.
Como outras linguagens de programação, o R suporta a saída de números, caracteres, etc.
A expressão de saída é muito simples:
print("w3codebox") print(123) print(3e2)
Resultado da Execução:
[1] "w3codebox" [1] 123 [1] 300
O R é uma linguagem interpretada, como o node.js e o Python, então geralmente podemos usar o R da mesma forma que uma linha de comando.
Se digitarmos um valor em uma linha, o R também o padronizará e mostrará diretamente:
> 5e-2 [1] 0.05
Se precisarmos concatenar a saída dos resultados, podemos usar a função cat():
> cat(1, "Adição", 1, "Igual a", 2, '\n') 1 Adição 1 Igual a 2
A função cat() adiciona automaticamente espaços entre cada dois elementos concatenados.
Os métodos de saída para arquivos no R são muito variados e convenientes.
A função cat() suporta a saída direta de resultados para um arquivo:
cat("w3codebox", file="/Users/w3codebox/w3codebox-test/r_test.txt")
Esta frase não gerará resultado no console, mas "w3codebox" exportar para "/Users/w3codebox/w3codebox-test/o arquivo "r_test.txt".
O parâmetro file pode ser um caminho absoluto ou relativo, é recomendável usar o caminho absoluto, o formato de caminho do Windows é D:\\r_test.txt.
cat("w3codebox", file="D:\\r_test.txt")
Atenção: essa operação é uma operação de "escrever sobre", use com cautela, pois ela vai limpar os dados do arquivo original. Se você quiser "adicionar", não esqueça de configurar o parâmetro append:
cat("GOOGLE", file="/Users/w3codebox/w3codebox-test/r_test.txt", append=TRUE)
Após a execução do código acima, o conteúdo do arquivo r_test.txt será como follows:
w3codeboxGOOGLE
A função sink() pode escrever o texto da saída do console diretamente para o arquivo:
sink("/Users/w3codebox/w3codebox-test/r_test.txt")
Após a execução dessa instrução, qualquer saída do console será escrita para o arquivo "/Users/w3codebox/w3codebox-test/o arquivo "r_test.txt", a saída do console não será exibida.
Atenção: essa operação é uma operação de "escrever sobre", ela vai limpar o conteúdo do arquivo existente.
Se ainda quiser manter a saída do console, pode configurar o atributo split:
sink("/Users/w3codebox/w3codebox-test/sink("r_test.txt", split=TRUE)
Se você quiser cancelar a saída para o arquivo, pode chamar sink() sem parâmetros:
sink()
sink("r_test.txt", split=TRUE) # A saída para o console também for (i in 1:5) print(i) sink() # Cancelar a saída para o arquivo sink("r_test.txt", append=TRUE) # Não saia para o console, escreva no arquivo print("w3codebox")
Executar o código acima, um arquivo r_test.txt será criado no diretório atual, abri o conteúdo do arquivo como follows:
[1] 1 [1] 2 [1] 3 [1] 4 [1] 5 [1] "w3codebox"
A saída do console é:
[1] 1 [1] 2 [1] 3 [1] 4 [1] 5
Pode nos lembrar do scanf do C, do java.util.Scanner do Java, se você tiver estudado Python, pode estar mais familiarizado com a função input(). Mas o R, como um linguagem interpretada, é mais semelhante a alguns linguagens de script de terminal (como bash ou PowerShell), que são baseadas em sistemas de comando, precisam de entrada e saída e não são adequadas para desenvolvimento de aplicações orientadas ao usuário (porque elas são usadas pelos próprios usuários finais). Portanto, o R não tem uma função específica para ler do console, a entrada de texto sempre está sendo feita no R.
O R tem uma variedade de funções de leitura de arquivos, mas se você quiser simplesmente ler o conteúdo de um arquivo como uma string, pode usar a função readLines:
readLines("/Users/w3codebox/w3codebox-test/r_test.txt")
Resultado da Execução:
[1] "w3codeboxGOOGLE"
O resultado da leitura é duas strings, que são os dois conteúdos das duas linhas contidas no arquivo lido.
Atenção:Cada linha do arquivo de texto lido (incluindo a última linha) deve ter um caractere de nova linha no final, caso contrário, será gerado um erro.
Além de simplesmente inserir e exibir texto, o R também oferece muitos métodos de entrada e saída de dados. Uma das facilidades do R é que pode salvar estruturas de dados diretamente para arquivos, e suporta salvamento em formatos como CSV, planilhas Excel, e suporta leitura direta. Isso é sem dúvida muito conveniente para os pesquisadores matemáticos. Mas essas funcionalidades não têm grande impacto no aprendizado do R, e serão mencionadas em capítulos futuros.
Para operações de arquivo, precisamos definir o caminho do arquivo. O R pode obter e definir o diretório de trabalho atual usando as seguintes duas linhas de código:
getwd() : Obter diretório de trabalho atual
setwd() : Definir diretório de trabalho atual
# Diretório de trabalho atual print(getwd()) # Definir diretório de trabalho atual setwd("/Users/w3codebox/w3codebox-test2") # Ver diretório de trabalho atual print(getwd())
O resultado da execução do código acima é:
[1] "/Users/w3codebox/w3codebox-test" [1] "/Users/tianqixin/w3codebox-test2"