查看原文
其他

如果临床医生只学一门编程语言,那就是他了

果子 果子学生信 2023-06-15

关于编程语言,我一开始学习的是perl,那是2年前在武汉陈连福的10天培训班上,就跟看天书一样。跌跌撞撞地学了一段时间,发现确实好用,但是在当时跟自己的领域脱节。

到了后来接触R语言,刚开始那会买了别人的教程,送代码,我就只能复制粘贴,一旦报错,根本无法解决。之后觉得老是买别人的代码什么时候是个头,在生信技能树的帮助下,花了一段时间系统地学习了R语言。

慢慢地我发现我可以处理GEO数据,TCGA数据,RNAseq数据,而且只要是数据框形式几乎都能处理。

这种感觉是久违的。

高中以前,我习惯的学习方式就是,学一个知识,运用知识去解100道题,但是回望过去10年的学医生涯,每一场考试都只需要死记硬背。 再也体会不了以一当百的感觉,不会就是不会,记不住就写不出,推理是没有用的。 但是在学习R语言之后,那种感觉又回来了。我现在每天练习一个小题目,很开心。

所以,我私底下觉得,学习R语言真是一本万利。而庆幸的是,我在30岁的高龄没有放弃自己。 前段时间写过一个小帖子,总结了一下R语言的学习路径,转眼阅读量已到了5000,想学习的可以参考下。 R 语言的最好资源,一个就够!

公众场合给别人推荐书是粗鲁的,稍微拿捏不好就会变成类似公众场合腰间绑着个喇叭放歌的感觉,自己趣味恶俗就算了,还强迫别人听。

学习的过程中,其实没有白走的路,那些走过的弯路,看过的歪书,都有可能使我们产生再来一次一定要避免的感觉,但是,那些弯路也影响了我们的选择,没有看过差的,怎么知道好的。

我们经常说,做错的题可以加深印象,做错的事可以促使我们反省,所以当我们走过泥泞不堪时,总是心地善良地去提携后人,给出中肯建议,但是,他们没有历过你的劫,理解不了的你的沧桑。

所幸,我们这个号里的阅读者,大多是我熟悉的人,有我的家人,同学,同门,还有朋友,从留言里面就能看出温情,他们这些年来给我无限的包容和理解,应该不会觉察出我已变得如此油腻。

好了,为了不产生类似于昨天留言里说的骗炮的感觉,我过渡一下,今天的题目跟勾股定理相关。三个数的和是1000,那么如果他们满足勾股定理,分别是多少? 马上开始第9题:

A Pythagorean triplet is a set of three natural numbers, a < b < c, for which, a^2 + b^2 = c^2 For example, 3^2 + 4^2 = 9 + 16 = 25 = 5^2. There exists exactly one Pythagorean triplet for which a + b + c = 1000. Find the product abc.

这题就是解方程 肯定能够求出a,b,c

实际上我没有什么思路,我脑子里还是上学那会的想法,想通过二项式变换直接得出abc

但是,不要忘了,这是在进行编程练习,无论是否巧妙,只要是遍历能做的,就交给计算机吧

  1. for (a in 1:500){

  2.  for (b in (a+1):500){

  3.    c = 1000-a-b

  4.    if (a^2 +b^2 == c^2 ){

  5.      return(list(c(a,b,c),a*b*c))

  6.    }

  7.  }

  8. }

最终得到a =200,b = 375, c =425 abc =31875000


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存