无法使用 Rpy2 访问 kmeans withinss 值
Can't access kmeans withinss value with Rpy2
我正在尝试将一些旧的 Python 代码从 Rpy1 更新到 Rpy2,但是有几行我无法正确无误地到达 运行:
result = rpy.r.kmeans(datnorm, cls, kmeans_iterations, kmeans_nstart)
sse = sum(result['withinss'])
我将 Rpy 依赖项更新为 Rpy2 并重构此代码以使用 Rpy2 importr
加载 R stats 模块和 kmeans
函数。这是更改后的代码:
result = rstats.kmeans(matnorm, cls, kmeans_iterations, kmeans_nstart)
sse = sum(result['withinss'])
当这段代码 运行s 时,我得到这个错误:
TypeError: Indices must be integers or slices, not <class 'str'>
我理解这是在说我不能使用字符串作为索引,因为 kmeans
正在返回一个整数向量。如果结果不是字典,我如何获得 withinss
值?
.rx2()
大概就是你想要的:
result.rx2('withinss')
(参见 https://rpy2.github.io/doc/v3.4.x/html/vector.html#extracting-r-style)
我正在尝试将一些旧的 Python 代码从 Rpy1 更新到 Rpy2,但是有几行我无法正确无误地到达 运行:
result = rpy.r.kmeans(datnorm, cls, kmeans_iterations, kmeans_nstart)
sse = sum(result['withinss'])
我将 Rpy 依赖项更新为 Rpy2 并重构此代码以使用 Rpy2 importr
加载 R stats 模块和 kmeans
函数。这是更改后的代码:
result = rstats.kmeans(matnorm, cls, kmeans_iterations, kmeans_nstart)
sse = sum(result['withinss'])
当这段代码 运行s 时,我得到这个错误:
TypeError: Indices must be integers or slices, not <class 'str'>
我理解这是在说我不能使用字符串作为索引,因为 kmeans
正在返回一个整数向量。如果结果不是字典,我如何获得 withinss
值?
.rx2()
大概就是你想要的:
result.rx2('withinss')
(参见 https://rpy2.github.io/doc/v3.4.x/html/vector.html#extracting-r-style)