У меня есть фрейм данных имен и писем, и я хотел бы создать цикл, в котором R отправляет почту всем этим людям, но с их соответствующими именами, используя библиотеку RDCOMClient.Фрейм данных
df <- data.frame("Name" = c("Name1", "Name2"), "Mail" = c("mail1@mail.com", "mail2@mail.com"))
Поскольку я только что использовал Python в проекте экзамена, я несколько раз создавал циклы с несколькими переменными, такими как:
for i,j in zip(df[1], df[2])
В идеале мой код будетчто-то вроде
for (mail in df$Mail, name in df$Name) {
outApp <- COMCreate("Outlook.Application")
outMail = outApp$CreateItem(0)
outMail[["To"]] = mail
outMail[["subject"]] = "Subject"
outMail[["body"]] = paste(" Dear", name, "\n \n bla bla bla.")
outMail$Send()
Sys.sleep(0.5)
if (mail == df$Mail[-1]) cat("Done!")
}
Это, однако, дает ошибку.
Причина, по которой я хотел бы использовать цикл, состоит по двум причинам:
- Я быкак R, чтобы сделать паузу перед началом следующей итерации (я не знаю, действительно ли это необходимо, но если мой фрейм данных содержит более ста писем, это, вероятно, будет лучше - я могу ошибаться здесь).
- Я бы хотел, чтобы R напечатал сообщение "Готово!"когда это будет сделано.
Если у вас есть другие предложения (я видел несколько рекомендаций по пакетам lapply, sapply и т. д.), они очень приветствуются!
Я надеюсь, что кто-то естькто знает, что делать.
Заранее спасибо,
Эмиль