与R CMD BATCH默认生成输出文件的类似命令不同,该输出文件包含会导致脚本执行暂停的任何错误消息,我无法找到执行此操作的方法Rscript.我尝试在我的linux shell中使用管道来实现这个目的:
RScript --no-save --no-restore --verbose myRfile.R > outputFile.Rout
Run Code Online (Sandbox Code Playgroud)
但这只会覆盖错误发生之前发生的任何输出,因此该文件outputFile.R不包含任何错误信息.有谁知道如何使用RScript并将其保存到文件中捕获执行R文件时发生的任何错误?
我有一个看起来像这样的数据集:
id1 id2 size
1 5400 5505 7
2 5033 5458 1
3 5452 2873 24
4 5452 5213 2
5 5452 4242 26
6 4823 4823 4
7 5505 5400 11
Run Code Online (Sandbox Code Playgroud)
其中id1和id2是在一个图形独特节点,并且size是分配给一个值涉及连接它们的边缘从 id1 给 id2.这个数据集相当大(略多于200万行).我想这样做是和大小列,按分组无序节点对的id1和id2.例如,在第一行中,我们有id1=5400和id2=5505.数据框中存在另一行,其中id1=5505和id2=5400.在分组数据中,这两行的大小列的总和将添加到单个行中.换句话说,我想总结一下我在(无序)(id1,id2)集合上的数据.我已经找到了一种方法来使用apply自定义函数来检查完整数据集中的反向列对,但这种方法非常缓慢.有没有人知道以另一种方式做到这一点的方法,可能与plyr基础包中的某些内容相比更高效?
我无法理解的具体使用情况sklearn.cluster.SpectralClustering作为官方文档中列出类在这里.假设我想使用自己的亲和矩阵来执行聚类.我首先实例化一个类的对象,SpectralClustering如下所示:
from sklearn.clustering import SpectralClustering
cl = SpectralClustering(n_clusters=5,affinity='precomputed')
Run Code Online (Sandbox Code Playgroud)
上述affinity参数的文档如下:
affinity:string,array-like或callable,默认为'rbf'
如果是字符串,则可以是"nearest_neighbors","precomputed","rbf"或sklearn.metrics.pairwise_kernels支持的某个内核之一.只应使用产生相似性得分的内核(非相似性增加的负值).群集算法不会检查此属性.
现在该对象cl有一个方法fit,其唯一参数的文档X如下:
X:类似数组或稀疏矩阵,形状(n_samples,n_features)
OR,如果affinity ==,则为
precomputed预先计算的形状亲和度矩阵(n_samples,n_samples)
这是令人困惑的地方.我正在使用我自己的亲和度矩阵,其中度量为0表示两个点相同,数字越大意味着两个点更不相似.然而,参数的其他选择affinity实际上采用数据集并产生相似性矩阵,其中较高的值表示更多的相似性,而较低的值表示不相似性(例如径向基础核).
因此,当fit在我的实例上使用该方法时,我SpectralClustering是否真的需要将亲和度矩阵转换为相似性矩阵,然后将其fit作为参数传递给方法调用X?相同的文档页面记录了将距离转换为行为良好的相似性,但未明确指出应该执行此步骤的位置,以及通过哪种方法调用.