如何对数据框中的每行数据进行累加呢?
- 已编辑
dapengde summarise
跟 tapply
的一大不同是它们处理的数据形式不同,summarise
要求数据符合 tidy
风。我觉得 Hadley 提倡的 tidy data
是极乐净土的灵魂:不管是数据整理,还是哥哥作图,如果觉得操作不顺手了,往往是由于数据不够“整然”造成的。Tidy data
的要求使得极乐净土处理的数据基本单元是数据表,而 R base 处理的基本单元是向量,这导致了两者在数据分析过程中的一些逻辑差异。这差异当你用 summarise
处理 iris
数据时就能体会到。
我觉得极乐净土和 Base R 在具体操作的不同只是形而下的器的差异,但是对数据形式要求的不同则属于形而上的道的殊途了。进化领域有句话叫做:
Nothing in Biology Makes Sense Except in the Light of Evolution.
在极乐净土世界似乎也可以说:
Nothing in Tidyverse Makes Sense Except in the Form of Data that is Tidy.
社区大佬 Norm Matloff 开始喊话 Tidyverse 了
Language unity
Horrible loss for R.
Python is currently undergoing a transition from version 2.7 to 3.x.
This will cause some disruption, but nothing too elaborate.By contrast, R is rapidly devolving into two mutually unintelligible
dialects, ordinary R and the Tidyverse. Sadly, this is a conscious
effort by a commercial entity that has come to dominate the R world,
RStudio. I know and admire the people at RStudio, but a commercial
entity should not have such undue influence on an open-source project.It might be more acceptable if the Tidyverse were superior to ordinary
R, but in my opinion it is not. It makes things more difficult for
beginners. E.g. the Tidyverse has so many functions, some complex, that
must be learned to do what are very simple operations in base R. Pipes,
apparently meant to help beginners learn R, actually make it more
difficult, I believe. And the Tidyverse is of questionable value for
advanced users.
摘自 <https://github.com/matloff/R-vs.-Python-for-Data-Science>
- 已编辑
Cloud2016 magrittr 好像是得名于画家 René Magritte,他在一幅画下题了一句 "This is not a pipe(烟斗)",但是他画的实际上就是一个烟斗(pipe)。之前我一直随大流把 pipe 翻译为“管道”,现在看来叫“烟斗”似乎更合适:pipe
将烟%>%
到嘴里。
《茶花女》的女主名字叫玛格丽特(Marguerite),这是我最喜欢的一部法国小说,我之前觉得这个包似乎和《茶花女》有关,所以比较容易就记住了这个包名。不过现在才知道这是个先入为主的误解。
不过烟斗也是一种管道,这样看来之前也没有翻译错。
- 已编辑
一开始也是习惯了tidyverse
系列包,但是在使用data.table
之后,只剩下ggplot2
了
Liechi 最近我注意到一个现象,就是 reshape, reahspe2, plyr 包 和 tidyr 包里的 gather()
和 spread()
仍然有人使用和学习,并且给出的理由我无法反驳,就是它们很稳定(作者不会动它们了,只是维护可用)
GGally 包在使用 reshape 和 plyr
ggplot2 在使用 reshape2 最近似乎要把它移除出去了 <https://github.com/tidyverse/ggplot2/pull/3639>