"R-fun-自己名字拼音.R"
的代码,完成以下三大部分内容1.1
用data.frame
生存一个名字为a
的数据框,其中a1
列是(2,4,6),a2
列是(3,5,8),a3
列是(4,1,9),并用head
展示出来
head(a)
## a1 a2 a3
## 1 2 3 4
## 2 4 5 1
## 3 6 8 9
1.2
用?pmin
学习pmin
函数的功能,比较pmin
和
min
的区别,实现pmin
功能,展示效果如下:
pmin(a$a1,a$a2,a$a3)
## [1] 2 1 6
1.3
自定义名为pmin_apply
的一个函数,函数中只使用apply
和min
,实现pmin
的功能
pmin_apply(a)
## [1] 2 1 6
1.4
自定义名为pmin_for
的一个函数,函数中使用for
和min
,还可使用其他函数(如nrow
,length
,numeric
等),同样实现pmin
的功能
pmin_for(a)
## [1] 2 1 6
1.5
以上函数运行成功以后,安装bench
包,通过以下指令比较一下时间
bench::mark(base=pmin(a$a1,a$a2,a$a3),
pmin_apply=pmin_apply(a),
pmin_for=pmin_for(a)
)
## # A tibble: 3 × 6
## expression min median `itr/sec` mem_alloc `gc/sec`
## <bch:expr> <bch:tm> <bch:tm> <dbl> <bch:byt> <dbl>
## 1 base 8.6µs 9.46µs 96266. 0B 19.3
## 2 pmin_apply 55.4µs 60.19µs 14714. 6.23KB 16.7
## 3 pmin_for 229.8µs 246.46µs 3677. 0B 16.9
2.1
用data.frame
生成一个名字为b1
的数据框,其中name
列是(“文”,“颜”,“唐”,“黄”),对应的score
列是(95,96,97,98),同样方法生存b2
的数据框,两者展示如下
head(b1)
## name_b1 score
## 1 文 95
## 2 颜 96
## 3 唐 97
## 4 黄 98
head(b2)
## name_b2 github
## 1 文 uuu1016
## 2 颜 yanyutong111
2.2
用?merge
学习merge
函数的功能,用merge
合并b1和b2文件(以name_b1
和name_b2
为共有的列),展示效果如下:
## name_b1 score github
## 1 文 95 uuu1016
## 2 颜 96 yanyutong111
2.3
接着加载dplyr
包,用%>%
和merge
实现上面同样的效果
## name_b1 score github
## 1 文 95 uuu1016
## 2 颜 96 yanyutong111
2.4
自定义%merge%
函数,实现上面类似的效果(注意输出的行名)
b1 %merge% b2
## score github
## 文 95 uuu1016
## 颜 96 yanyutong111
3.1 确保以上代码运行无误以后,
R-fun-自己名字拼音.R
这个文件,上传/同步到自己github账户下的code文件夹;备注:建议通过github desktop
进行同步
3.2
根据以上R
的代码,新建一个同名的R-fun-自己名字.Rmd
文件(R
Markdown格式的文件),可通过AI辅助(推荐使用VS code + github coploit
的组合,当然使用Deepseek
等工具也可以),Rmd
代码运行(Knit
)成功后,会生成一个新的R-fun-自己名字.html
文件,这是Rmd
代码运行后的网页版展示形式;
Rmd文件
和html文件
)保存后,也上传/同步到github
的code文件夹;备注:建议通过github desktop
进行同步
3.3 以上R
Markdown格式的文件运行(Knit
)后,在成功生成html文件
以后,点击右上角的publish
,选择在Rpubs
公布(需要新建一个账号),这时会生成一个链接地址,这是Rmd
代码的在线展示形式。
https
格式的*链接地址*
,粘贴补充在github
名下自带的README文件
,保存并同步.备注:README文件
等代码文件,可以用记事本
软件打开,但强烈建议用editplus
或notpad
或sublime
等代码编辑软件打开修改)