如何将电子邮件数据提取到R?

时间:2010-06-05 07:29:00

标签: email r gmail package

如何将我的电子邮件数据库从Gmail(或Thunderbird)导出到R?

就像rgoogledocs软件包和twitteR一样,是否有gmailR软件包或用于将电子邮件导出到stat软件包的标准格式?

塔尔

5 个答案:

答案 0 :(得分:4)

标准电子邮件(在Unix系统上)是mbox文件(包含多条消息)或maildir设置,其中每封邮件都是目录中的文件。

无论哪种方式,它都是ascii文本。这就是MUA(邮件用户代理 - 您的邮件阅读器)与您的MTA(邮件传输代理 - 邮件服务器软件,如exim,qmail,postfix等)正交的方式。 MTA可以使用诸如POP3或IMAP之类的网络协议来向客户端提供邮件文件,在这种情况下,客户端(可能是Gmail或Thunderbird)不再看到底层文件。因此,您可能需要了解如何从您使用的后端导出邮件,然后阅读它。

这与R或编程无关 - 除非您现在觉得必须使用POP3或IMAP工具扩展R以连接到(远程)邮件服务器。

答案 1 :(得分:2)

Gmail和Thunderbird不一样...你可以在Thunderbird中启用Gmail帐户,因此导出每个电子邮件都是ASCII文件,因此编写一个R批处理脚本,它将获取每个文件并将其作为对象导入R中,因此......你明白了。 =)

通常我试图避免“行人走近”...但我得到的印象是你很容易将R用作“通用”编程语言...... Python或JAVA,另一只手可以非常高效,所以你可以写(或者请别人为你写)一个脚本,它会以理想的格式“带来”你的数据,然后在R中处理它.R已经成熟了很多,而且它不是仅用作统计分析的工具,但使用一些广为人知的编程语言来执行数据总是一个好主意。

所以那里......卷起袖子,潜入Python(JAVA,C ......无论你想潜水)!

P.S。 我认为这与你以前的文字云有关...

答案 2 :(得分:2)

现在有R包来提取电子邮件数据。这个软件包仍处于测试阶段,但任何人都可以从GitHub安装它,软件包名称是edeR。现在,这可以从支持IMAP的Gmail中提取电子邮件数据。

答案 3 :(得分:2)

首先需要安装library(edeR)。可能需要在Windows 8上手动安装Java 64,可能需要在Gmail中启用IMAP访问。

dat3 <-extractKeyword(username="YOURLOGIN@gmail.com",
                  password="YouRPaSS",
                  kw="adsense",
                  nmail=5)

这将使用关键字&#39; adsense&#39;。

下载5封电子邮件

答案 4 :(得分:1)

将mbox格式的电子邮件导出到PC后,可以使用R中的tm和tm.plugin.mail软件包。后者可以将电子邮件导出到R. / p>

require("tm")
require("tm.plugin.mail")

然后,将您的电子邮件从mbox(即单个邮箱中的几个邮件)格式转换为eml(即单个文件中的每个邮件)格式:convert_mbox_eml(mbox,dir)。在下面的示例中,mbox由“yourmails.mbox”表示,它描述了mbox的位置。输出目录由“your_mails”提供。

convert_mbox_eml("yourmails.mbox", "your_mails")

您可以阅读电子邮件文档并使用以下R命令进行检查。

mails <- VCorpus(DirSource("your_mails/"), readerControl = list(reader = 
         readMail))

inspect(mails)