我正在构建一个供内部使用的包devtools.我希望从文件/连接中获取数据包的负载(根据构建的日期包而不同).数据很大,因此在包构建期间解析和加载数据的一次性成本是优选的.
目前,我有一个data.R文件R/,它将数据分配给包级变量,这些值是在包安装期间分配的(或者至少是看起来正在发生的事情).这种不太理想的设置大多有效.为了使程序包的所有实例具有相同的数据,我必须使用程序包分发数据文件(目前inst/在构建程序包之前将其复制到帮助程序脚本中),而不是将它们全部打包在一起.肯定有更好的办法.
如:
data/
Collate(我认为),但后来我必须维护所有.R文件的顺序(但是由于增加了复杂性,我可能会使用Makefile?)tl; dr:有哪些方法可以将动态变化数据的快照添加到为部署冻结的R包中?
我正在尝试创建一个类,允许我将同一个类的对象添加/相乘/分割,或者为该类的每个成员添加/乘以数字参数
所以我的班级是坐标(我知道那里有很棒的套餐可以做我想要的一切比我自己希望的更好,但现在我只是好奇).
class GpsPoint(object):
"""A class for representing gps coordinates"""
def __init__(self, x, y, z):
self.x = x
self.y = y
self.z = z
def __add__(self, other):
return GpsPoint(self.x + other.x, self.y + other.y, self.z + other.z)
def __radd__(self, other):
return GpsPoint(self.x + other, self.y + other, self.z + other)
def __str__(self):
return "%d, %d, %d" % (self.x, self.y, self.z)
Run Code Online (Sandbox Code Playgroud)
这是我最初的尝试.我发现它有效,但前提是我先使用了数字参数
>>foo = GpsPoint(1,2,3)
>>print 5 + foo
6, 7, 8
>>print foo + 5
AttributeError: 'int' object has no …Run Code Online (Sandbox Code Playgroud)