%>% | 管道符 | 把管道符前面的值,赋值给管道符后面的函数里 |
. | 占位符 | 类似于代词,就是指代管道符赋值到的位置 |
具体看例子:
1.生成了3个演示用的data.frame
df1 <- data.frame(
col1 = 1:3,
col2 = letters[1:3]
)
df2 <- data.frame(
col1 = 4:6,
col2 = letters[4:6]
)
df3 <- data.frame(
col1 = 7:9,
col2 = letters[7:9]
)
2.用rbind()将这3个data.frame依次合并起来
#不用管道符的写法:
df4 <- rbind(df1,df2)
df4 <- rbind(df4,df3)
print(df4)
#用管道符的写法:
df5 <- rbind(df1,df2) %>% #ctrl+shift+M 是 %>% 的快捷键
rbind(.,df3) %>% #rbind(.,df3)中,括号内前面的那个点,是“占位符”。类似于代词,指代上一行代码结果赋值到的位置
print(.) #如果括号内没有其他元素的时候,这个“.”可以被省略,写成print()也可以
不用管道符的结果:
![](https://img-blog.csdnimg.cn/7719a8e5aebc44229e474764ac37b913.png)
用管道符的结果:
![](https://img-blog.csdnimg.cn/5ffa83bd91064610bb07faf3e57ab109.png)
结果是一样的。
当代码多起来的时候,用管道符就能“减少赋值的次数”,提高效率,还能减少出错