English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
El aprendizaje de un nuevo lenguaje generalmente comienza con el programa de salida "Hello, World!", y el código del programa "Hello, World!" del lenguaje R es el siguiente:
myString <- "Hello, World!" print ( myString )
El siguiente ejemplo asigna la cadena "Hello, World!" a la variable myString y luego la imprime utilizando la función print()
注意:La asignación de valores en el lenguaje R utiliza la flecha izquierda <- símbolo, aunque algunas versiones nuevas también admiten el símbolo de igualdad =.
El nombre de las variables válidas del lenguaje R se compone de letras, números y puntos . o subrayados _.
El nombre de la variable comienza con una letra o un punto.
Nombre de la variable | ¿Es correcto? | Razón |
---|---|---|
var_name2. | Correcto | Comienza con un carácter y está compuesto por letras, números, subrayados _ y puntos . |
var_name% | Error | % es un carácter ilegal |
2var_name | Error | No puede comenzar con un número |
.var_name, var.name | Correcto | Puede comenzar con un punto, pero debe tener en cuenta que después del punto no puede seguir un número |
.2var_name | Error | Después del punto, no puede seguir un número |
_var_name | Error | No puede comenzar con el subrayado _ |
La versión más reciente del lenguaje de programación R permite la asignación de valores utilizando la flecha izquierda <-、igual a、flecha hacia la derecha -> Asignación:
# Usar el signo de igualdad = para asignar > var.1 = c(0,1,2,3) > print(var.1) [1] 0 1 2 3 # Usar la flecha hacia la izquierda <-Asignación > var.2 <- c("aprender","R") > print(var.2) [1] "aprender" "R" # Usar la flecha hacia la derecha <- Asignación > c(TRUE,1) -> var.3 > print(var.3) [1] 1 1
Puede usar ls() para ver las variables definidas: ls(): Función:
> print(ls()) [1] "var.1" "var.2" "var.3"
Puede usar rm() para eliminar variables: rm(): Función:
> rm(var.3) > print(ls()) [1] "var.1" "var.2" >
En el capítulo anterior ya hemos aprendido a instalar el entorno de programación de R, a continuación, les presentaremos la programación interactiva y el script de archivo del lenguaje R.
Solo necesitamos ejecutar el comando R en la línea de comandos para entrar en la ventana de programación interactiva:
R
Después de ejecutar este comando, se abrirá el intérprete de R, donde podemos ingresar código después del símbolo >.
Las órdenes interactivas pueden salirse ingresando q():
> q() ¿Guardar imagen del espacio de trabajo? [y/n/c]: y
El archivo de lenguaje R tiene la extensión .R.
A continuación, creamos un archivo w3codebox-test.R archivo: el código es el siguiente:
A continuación, ejecutamos el script usando Rscript en la ventana de la línea de comandos:
Rscript w3codebox-test.R
El resultado de la salida es el siguiente:
[1] "w3codebox"
La función print() es la función de salida del lenguaje R.
Como otros lenguajes de programación, R admite la salida de números, caracteres, etc.
La expresión de salida es muy simple:
print("w3codebox") print(123) print(3e2)
结果执行:
[1] "w3codebox" [1] 123 [1] 300
R es un lenguaje interpretativo, como node.js y Python, por lo que a menudo podemos usar R de la misma manera que una línea de comandos.
Si introducimos un valor en una sola línea, R también lo normalizará y lo saldrá directamente:
> 5e-2 [1] 0.05
Si necesitamos concatenar la salida de resultados, podemos usar la función cat():
> cat(1, "sumar", 1, "igual a", 2, \ ") 1 Sumar 1 Igual a 2
La función cat() agrega automáticamente un espacio entre cada dos elementos concatenados.
El método de salida a un archivo en R es muy diverso y fácil de usar.
La función cat() admite la salida directa de resultados a un archivo:
El parámetro file puede ser una ruta absoluta o relativa, se recomienda usar una ruta absoluta, el formato de ruta de Windows es D:\\r_test.txt.3codebox", file="/Users/w3codebox/w3codebox-test/r_test.txt")
Esta oración no produce resultados en la consola, sino que coloca "w3codebox" 输出到 "/Users/w3codebox/w3codebox-test/codebox" se exporta a "
El archivo "r_test.txt".
El parámetro file puede ser una ruta absoluta o relativa, se recomienda usar una ruta absoluta, el formato de ruta de Windows es D:\\r_test.txt.3cat("w
codebox", file="D:\\r_test.txt")
Nota: Esta operación es una operación de "sobreescritura", usa con precaución, ya que eliminará los datos originales del archivo. Si deseas "agregar" (append), no olvides configurar el parámetro append:/Users/w3codebox/w3codebox-test/cat("GOOGLE", file="
Después de ejecutar el código anterior, abre el archivo r_test.txt y observa el contenido siguiente:
w3codeboxGOOGLE
La función sink puede escribir directamente la salida de la consola en un archivo:
sink("/Users/w3codebox/w3codebox-test/r_test.txt")
Después de ejecutar esta instrucción, cualquier salida en la consola se escribirá en el archivo "/Users/w3codebox/w3codebox-test/El archivo "r_test.txt" no se mostrará en la consola.
Nota: Esta operación es una operación de "sobreescritura", que borrará directamente el contenido original del archivo. Si deseas "agregar" (append), no olvides configurar el parámetro append:
Si还想保留控制台的输出,可以设置 split atributo:
sink("/Users/w3codebox/w3codebox-test/sink("r_test.txt", split=TRUE)
Si deseas cancelar la salida al archivo, puedes llamar a sink sin parámetros:
sink()
sink("r_test.txt", split=TRUE) # La salida también se muestra en la consola for (i in 1:5) print(i) sink() # Cancelar la salida al archivo sink("r_test.txt", append=TRUE) # No se muestra en la consola, se escribe en el archivo print("w3codebox")
Ejecuta el código anterior y se creará un archivo r_test.txt en la carpeta actual. Abre el archivo y observa el contenido siguiente:
[1] 1 [1] 2 [1] 3 [1] 4 [1] 5 [1] "w3codebox"
La salida en la consola es:
[1] 1 [1] 2 [1] 3 [1] 4 [1] 5
Podríamos asociar C con scanf, Java con java.util.Scanner, y si has estudiado Python, probablemente te suene la función input(). Sin embargo, R es un lenguaje interpretativo, más parecido a algunos lenguajes de script de terminal (como bash o PowerShell), que se basan en un sistema de comandos y que necesitan entrada y salida, y no son adecuados para desarrollar aplicaciones orientadas al usuario (ya que están diseñados para el uso final del usuario). Por lo tanto, R no tiene una función específica para leer de la consola, y la entrada de texto se ha estado realizando en R desde su uso.
R语言中有丰富的文件读取函数,但是如果纯粹的想将某个文件中的内容读取为字符串,可以使用readLines函数:
readLines("/Users/w3codebox/w3codebox-test/r_test.txt")
结果执行:
[1] "w3codeboxGOOGLE"
读取结果是两个字符串,分别是所读取的文件包含的两行内容。
注意:所读取的文本文件每一行(包括最后一行)的结束必须有换行符,否则会报错。
除了文字的简单输入输出以外,R还提供了很多输入数据和输出数据的方法,R语言最方便的地方就是可以将数据结构直接保存到文件中去,而且支持保存为CSV、Excel表格等形式,并且支持直接地读取。这对于数学研究者来说无疑是非常方便的。但是这些功能对于R语言的学习影响不大,我们将在之后的章节提到。
对于文件操作,我们需要设置文件的路径,R语言可以通过以下两个行数来获取和设置当前的工作目录:
getwd() : 获取当前工作目录
setwd() : 设置当前工作目录
# 当前工作目录 print(getwd()) # 设置当前工作目录 setwd("/Users/w3codebox/w3codebox-test2") # 查看当前工作目录 print(getwd())
输出结果执行以上代码为:
[1] "/Users/w3codebox/w3codebox-test" [1] "/Users/tianqixin/w3codebox-test2"