R basics
R语言学习笔记
这里是关于一些R语言的语法备忘 Learning Website
Unit 1 Assignment and basic calculation
myapples = 3
or
myapples <- 3
+
, -
, *
, /
, ^
%%
means the remainder.
Unit 2 Vectors
combine function: c()
numeric_vector = c(1,2,3) #Or c(1:3)
sum()
calculates the sum of all elements of a vector.
mean()
calculates the average of all elements of a vector.
Selection by comparison: logical comparison operator: <
, >
, <=
, >=
, ==
, !=
.
poker_vector[selection_vector]
Unit 3 Matrices
Useful functions: matrix()
, colnames()
,rownames
, rbind
, cbind
. rowSums()
, colSums()
, e.g.
>matrix(1:9,byrow =TRUE, nrow = 3)
[,1] [,2] [,3]
[1,] 1 2 3
[2,] 4 5 6
[3,] 7 8 9
>new_hope <- c(460.998, 314.4)
>empire_strikes <- c(290.475, 247.900)
>return_jedi <- c(309.306, 165.8)
>star_wars_matrix <- matrix(c(new_hope, empire_strikes, return_jedi), nrow = 3, byrow = TRUE)
>region <- c("US", "non-US")
>titles <- c("A New Hope", "The Empire Strikes Back", "Return of the Jedi")
#Usage of colnames and rownames
>colnames(star_wars_matrix)<-region
>rownames(star_wars_matrix)<-titles
US non-US
A New Hope 460.998 314.4
The Empire Strikes Back 290.475 247.9
Return of the Jedi 309.306 165.8
# Usage of cbind and rbind
big_matrix <- cbind(matrix1, matrix2, vector1 ...)
big_matrix = rbind(matrix1, ...)
注意此处与MATLAB语法的区别,在MATLAB中选取矩阵的行列用同样使用
[]
,但是选取整列这个功能,MATLAB中使用:
表示,例如school[1,:]
,而在R中,不使用任何符号,例如school[1,]
。
Unit 4 Factor
The term factor
refers to a statistical data type used to store categorical variables. The difference between a categorical variable and a continuous variable is that a categorical variable can belong to a limited number of categories. A continuous variable, on the other hand, can correspond to an infinite number of values.
factor_speed_vector <-factor(speed_vector, ordered=TRUE, levels=c("slow","fast","insane"))
Unit 5 Data Frame
Useful fuctions show below:
head(variables)
shows the first observations of a data frame
tail(variables)
shows the last obseravations of a variables
str()
get a quick overview of data
data.frame(vectors1, vectors2, ...)
combine vectors into one data
$sign
: e.g. planets_df$diameter when data have names
subset(my_df, subset = some_condition)
, e.g. subset(planet_df, diameter<1)
order()
interesting function e.g.
>a = c(100,10,1000)
order(a)
[1] 2 1 3
>a[order(a),]
[1] 10 100 1000
#the comma is the solid brakets is crucial.
Unit 6 List
List can have kinds of components: vector, matrices and data frames.
My_list = list(my_vector, my_matrix, my_df)
Change the name of list
names(my_list)=c("vec", "mat", "df")
Or
my_list = list(my_vec=vec, my_matrix=mat,...)
To conveniently add elements to lists you can use the c() function, that you also used to build vectors:
ext_list <- c(my_list , my_val)
This will simply extend the original list, my_list, with the component my_val. This component gets appended to the end of the list. If you want to give the new list item a name, you just add the name as you did before:
ext_list <- c(my_list, my_name = my_val)