R与Excel
有人说,Excel中被使用最多的功能是数据透视。我没有统计过,也不想做这样繁琐的工作,让我假设这是真的,是一个真命题。
再做一个假设,假设正在读这些文字的你觉得使用Excel是完成某个特定的问题是烦人的。
这里给出使用R来完成这个功能(算法)的一个方案。
-
打开任意一文本编辑器。
-
创建一个数据框,使用IO函数把文件里的数据丢进去。
-
把reshape包加载到R会话中,使用melt函数融合数据。
-
使用cast重铸成你想要的样子。
-
我看到的一些文章,介绍到第3步就结束了,大概作者认为所要的数据透视表已经出来。但一般Excel作出来的透视表还有加总的一列。所以如果你需要有一列是用来表示总和的话,那么先创建一个矩阵,把数据框的数值部分丢到数据框里,使用apply函数作用矩阵,返回两个数值向量。
-
把这两个向量放到那个数据框了。显然,这并不能一步完成,其中一个当作变量放进去,另一个放到一个具有相同变量的数据框列,然后使用cbin函数拼接起来。这样,这个数据框就相当于一个数据透视表。
-
保存文本,在使用时运行这个脚本。
参考《R语言实战》
网友评论