自编函数是几乎每一种编程语言的基础功能,有些时候我们需要解决的问题可能没有完全一致的包中的函数来进行解决,这个时候自编函数就成了一样利器,而Python与R在这方面也有着一定的差别,下面举例说明: Python #一个例子def gold(n=1000): x = [1,1] for i in range(n): x.append(x[-1]+x[-2]) print('黄金分割比的近似值:'+str(x[-2]/x[-1])) gold(10000) 黄金分割比的近似值:0.618033988
关于这两个函数,官方是这么定义的: substitute returns the parse tree for the (unevaluated) expression expr, substituting any variables bound in env. quote simply returns its argument. The argument is not evaluated and can be any R expression. 貌似看不懂,看几个例子来帮助理解. > x <
tidyverse系列的R包虽然解放了大家的双手,但同时也束缚了我们重新编写函数的能力.在这一套语法中,要实现作为函数参数的字符串和变量之间的相互转换困难重重,但只要掌握了其中原理后,也就能够游刃有余地处理了. 首先要理解基础R中几个重要又易忽略的函数. eval Evaluate an (Unevaluated) Expression: Evaluate an R expression in a specified environment. 简言之就是:对表达式对象的求值. 可以把字符串转化成
1.缓冲区法:查询数据库fm表里,与坐标(12989691.512 4798962.444)相距0.0001米的数据(3857坐标系) ),),),),geom) ; --如果坐标系统一,不用transform也可以 SELECT id FROM fm where st_intersects(st_buffer(st_geomfromtext('point(12989691.512 4798962.444)'),0.0001),geom) ; 2.缓冲区法:查询fm表里,与点要素geometry
给定一个二维平面,平面上有 n 个点,求最多有多少个点在同一条直线上. 示例 1: 输入: [[1,1],[2,2],[3,3]] 输出: 3 解释: ^ | | o | o | o +-------------> 0 1 2 3 4 示例 2: 输入: [[1,1],[3,2],[5,3],[4,1],[2,3],[1,4]] 输出: 4 解释: ^ | | o | o o | o | o o +------------------