全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
2519 1
2009-03-21

Z <- .Fortran("kmns", as.double(x), as.integer(m),
                       as.integer(ncol(x)),
                        centers = as.double(centers),
                        as.integer(k), c1 = integer(m), integer(m),
                        nc = integer(k), double(k), double(k), integer(k),
                        double(m), integer(k), integer(k),
                        as.integer(iter.max), wss = double(k),
                        ifault = as.integer(0), PACKAGE="stats")

它的意思表明调用fortran代码编写的kmns函数。下面即为kmns的函数头定义:

SUBROUTINE KMNS(A, M, N, C, K, IC1, IC2, NC, AN1, AN2, NCP, D,
     *    ITRAN, LIVE, ITER, WSS, IFAULT)

我不明白的地方有两个:

第一、调用函数中的参数as.double或是as.integer(),这个as代表什么意思,为什么有些参数有as,有些参数没有as

第二、调用函数中的参数与fortran代码的kmns函数中参数是按顺序一一对应的吧,也即是说会为kmns函数中的参数赋初值,我理解的对不?

再次求教达人。

[此贴子已经被作者于2009-3-21 23:44:34编辑过]

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2009-8-4 00:13:33
1# tchenyunt

呵呵,本菜鸟只知道as的意思,就是强制转化,as.double(x)是把x转化成双精度型, as.integer(m)表示把m转化为整数。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群