3.17 程序结构
有3种结构:
顺序结构:A---B
选择结构:只有满足一定条件时才会执行的程序模块。
循环结构:只要满足一定的条件,程序模块就会不断的执行。
3.18 for循环 遍历
seq:序列。seq()函数创建序列。
注:seq为各种序列时,则为各序列的名字;seq为数字时,则写成 for(i in 1:n)。
对于数据框data frame,使用for循环默认是按列遍历的。如何按行遍历。使用:
3.19 while循环 条件为真
while (condition) expr
一般在while语句外面对condition中的变量i 赋值。
next是跳出某次的循环
break是终止循环,跳出死循环
3.20 repeat
while (TRUE) 是死循环
使用repeat,没有condition,本身就是死循环。要用break跳出。
即:while (TRUE) {} 等价于repeat {}
3.21 函数使用(用户自编函数)
函数可以没有返回值
如果定义一个没有参数函数,在调用该函数时,输入了参数,则报错。反之,定义一个有参数的函数,在调用函数时,没有输入参数,则也会报错。
在定义函数时,给参数一个默认值,则调用函数时,不输入参数,函数会执行默认参数值。如:
函数的参数位置可以调换,调换的话,要带上参数的名字。function_name(parameter2= ,parameter1= )
当有不知道多少个参数时,用省略号“...”表示。
3.22 向量化计算-生成向量
用冒号可以递减
seq()通过参数by=负值表示递减
3.23向量化计算-向量化运算