erStern

  • 2024年7月9日
  • 注册于 2017年10月22日
  • 爬楼半天,码些字权当休息一下。忍不住简要说一下个人感受:

    • Posit不厚道啊,想想我前些天还在别的论坛给人推荐knitr,这边扭头一看资深员工就被扫地出门了。人心中都有杆秤的。

    • 我们大学学的是卫生统计,我自己对于数据处理的入门是靠大鹏的博客(晴耕雨读),看Hadley的书对于整个数据处理流程和思路大有裨益,对我当时应聘SAS程序员的工作也有帮助。从这个角度说,tidy的确起到了传道的作用,只不过本人不太喜欢一家独大,总要允许不同的声音存在啊。虽然我也非常喜欢 %>% 命令和ggplot2,但这几年断断续续用下来,还是认为base学好才能打下更深的基础,当然这也跟个人喜好和需求有关系,身边确实也是tidy用户更多,更多人认为跑出来结果就好,没必要追究更深层次的东西。学农的、生物的同学想必也有类似的想法,能用、好用、实用,更为关键。

    • 回过头看,不论哪种语言、系统、统计模型等等,本质上都是工具,十年前我电脑上是Linux单系统,现在工作电脑统一换Linux了,我反而在家里装了Win/Linux双系统。以我浅薄的经历,技术问题往往不是最大的问题,很多分歧是人造成的,或者是人的理念造就的。随着技术革新,好用的、有需求的就会有人用,但是人性带来的偏见最难以泯灭。大家不要激动,只讨论工具多好,多一种声音、多一类观点,也不是坏事。我工作必须要用WPS,但并不妨碍我更喜欢用Emacs码字,反而差异越大的方式和工具,可能会带来更广阔的思路与方法。

    • @yihui 关注您的博客多年,相信你也不是容易被打击的人,如你所说强扭的瓜不甜,人生总要找点快乐的事儿去做。建议正好抽时间多读点书,大牛manateelazycat也曾说过,人文的书籍也有助于思考,对于写代码同样很有帮助。另外,我也姓谢,援用一个出自谢安的成语:期待你东山再起

    • KANG1943 SAS里进行compare的话,就是对两个R*C表进行比较,比较并输出每一个格子的差异,只不过有他特定的文件格式,并非纯文本,也无关数据类型。

      R或Python可能通常是对某一行列比较,也无法定位到具体索引位置。

      • 现在仅知道利用SAS的proc compare是可以对两份SAS结果(行列表)进行比对的,列出某个存在差异的值及所在位置。

        那么请问,R、SAS、Python这三者的结果两两之间,有没有办法进行比对,或者R与R、R与Python……除了已知的SAS与SAS,其他各种组合都行。在保证输出显示结果不变的情况下,先转成csv之类的再各自读取进行比对也可以。

        能提供点思路吗?谢谢!

      • dapengde xaringan

        我以为Rmd就是新世界了,没想到还有这种玩法。

        请问是晴耕雨讀的大鹏吗?

        • 又找到另外的方法,使用 data.table,加上 on= 这一参数即可,初步成功。
          详细的操作我再去实验并整理一下。

        • 可能我没有描述清楚,或是各位的意思理解不到位,总之没有成功。
          接着 Ihavenothing 的例子,我的数据是这样的:

          | v1     | v2     | col3 | col4 |
          |--------|--------|------|------|
          | AABBCC | ABCABC |      |      |
          | BBCCDD | DEFDEF |      |      |
          | DDEEFF | ABCDEF |      |      |
          | CCDDFF | DDEEFF |      |      |
          | ABCABC | CCDDFF |      |      |
          | ...... | ...... |      |      |

          若条件是 BBCCDD与DDEEFF,那么对应于 [2,1] [3,1] [4,2],则 [2:4,] 保留,[1,] [5,] 删除不要。
          谢谢!

          • 我现在遇到一个表格,大概10k行,筛选数据时会用到前两列。
            每行的数据都是字符串,但却不是对应单一结果,比如:第一列是 AAAABBCCCDDDDD……第二列是 BCDCDAFFBCDE……
            假设我只需要两种筛选条件B,C,且已经有了向量 c("B","C"),那么如何把 前两列中包含 B或C 的所有行挑出?谢谢!

            可能我看的例子少,有类似Excel中vlookup函数的解决方案,但是列中的结果都是唯一的,我需要选出的数据,大部分都是多行对应同样的值。