Rからメールが送信できるパッケージの紹介です。ファイルの添付はもちろん、本文に画像の埋め込みやRmdファイルの添付などが可能です。実行コマンドではGmailアカウント情報を利用してメールを送信する例を紹介します。なお、Gmailに限らずSMTPサーバー情報があれば他のメールサービスも利用可能です。
また、Googleアカウントに二段階認証を設定していても、アカウント設定から「セキュリティ」、「Googleへのログイン」、「アプリ パスワード」に進みパスワードを取得することで利用可能です。

パッケージバージョンは0.7.18。実行コマンドはR version 4.3.1で確認しています。
パッケージのインストール
下記、コマンドを実行してください。
#パッケージのインストール
install.packages("emayili")
usernameとpasswordを”.Renviron”ファイルに保存して使う
実行コマンドでメール送信に必要はusernameとpasswordは実行コマンドに直接打ち込んでいます。しかし、セキュリティを考えるとあまり望ましくありません。そこで、環境変数を保存する”.Renviron”ファイルを作成するコマンドを紹介します。
###Documentsフォルダに".Renviron"ファイルを作成する#####
# まずは環境変数の確認
Sys.getenv()
# ファイルパスを指定:Documentsフォルダ
doc_renviron <- path.expand("~/.Renviron")
# ".Renviron"ファイルが存在するか確認
if(!file.exists(doc_renviron))
# 存在しなければ作成
file.create(doc_renviron)
# ".Renviron"ファイルに書き込み
write_Renviron <- file(doc_renviron, "w" )
# USERNAMEを書き込み
writeLines('GMAIL_USERNAME="HOGEHOGE@gmail.com"', write_Renviron)
# PASSWORDを書き込み
writeLines('GMAIL_PASSWORD="HOGEHOGEHOGEHOGEHOGEHOGE"', write_Renviron)
# ".Renviron"ファイルを閉じる
close(write_Renviron)
# 気になれば".Renviron"ファイル内容を確認
file.edit(doc_renviron)
# Rをrestartして内容を反映
.rs.restartR()
# 最後に環境変数を確認
Sys.getenv()
# 呼び出し例
Sys.getenv("GMAIL_USERNAME")
[1] "HOGEHOGE@gmail.com"
########
実行コマンド
詳細はコメント、パッケージのヘルプを確認してください。
#パッケージの読み込み
library("emayili")
#メールを送る準備,envelopeオブジェクト作成:envelopeコマンド
email <- envelope()
#from,to,ccなどを設定:from,to,cc,bccコマンド
#例ではfromコマンド,toコマンドを使用
email <- email %>%
from("XXXXXXXX@XXXXXX.XXXXX") %>%
to("YYYYYYYYY@YYYYYY.YYYYYY")
#メールタイトルを設定:subjectコマンド
email <- email %>%
subject("TEST:からだにいいもの")
#メール本文を設定:textコマンド
#{{XXXX}}で埋め込みも可能です
text <- "karada-good!!"
email <- email %>%
text("これはテストです!!
{{text}}")
#添付ファイルを設定:attachmentコマンド
email <- email %>%
attachment(paste(as.character(tcltk::tkgetOpenFile(title = "ファイルを選択"),
sep = "", collapse ="")))
#Rmdファイルの出力を本文に埋め込む:renderコマンド
#[https://www.karada-good.net/analyticsr/r-228/]のRmdファイル
email <- email %>%
render(paste(as.character(tcltk::tkgetOpenFile(title = "ファイルを選択"),
sep = "", collapse ="")),
include_css = "rmd")
#本文に画像を埋め込む方法:htmlコマンド,attachmentコマンドを組み合わせる
#cidで設定するのがポイント
html_body <- '<html><body><img src="cid:image" width="600" height="150"></body></html>'
email <- email %>%
html(html_body) %>%
attachment(path = paste(as.character(tcltk::tkgetOpenFile(title = "ファイルを選択"),
sep = "", collapse ="")),
cid = "image")
#gmailアカウントを情報を設定:gmailコマンド
#2段階認証を設定している場合はgoogleアカウントから
#セキュリティーのGoogleへのログイン,アプリパスワードを取得する
#パスワードはログインパスワードではなく、アプリパスワードを設定する
GmailSend <- gmail(username = "XXXXXXXXXX", password = "YYYYYYYYYYYYY")
#作成したGmailSend functionを使用してメールを発信
GmailSend(email, verbose = TRUE)
#他サービスなどを使用する場合の設定方法:serverコマンド
smtp <- server(
host = "XXXXXXXXXXXX",
port = XXXXXXX,
username = "XXXXXXXXXX",
password = "XXXXXXXXXXXXXXX"
)
smtp(envelopeオブジェクト, verbose = TRUE)
出力例

少しでも、あなたの解析が楽になりますように!!