如何在R中访问S4对象的插槽

问题描述 投票:28回答:2

我正在使用程序的小波,并且使用包wavelets使用函数dwt创建时间序列的DWT。此函数返回类dwt的对象,该对象是具有许多插槽的S4对象:WVlevelsfilter等。

如何作为矢量访问W

r s4 slots wavelet
2个回答
32
投票

@将允许您访问S4对象的插槽。

因此,如果您的对象称为wave,则wave@W应该为您提供矢量。

请注意,通常最好的方法不是直接访问插槽,而是通过访问器功能(例如coefs()而不是用$@挖出系数)。但是,通常不存在此类功能,因此您必须直接访问插槽。这将意味着your code breaks if the internal implementation changes


0
投票

Ari B. Friedman的回答很好。

但是请记住,使用@访问S4对象的插槽可能不是一个好习惯。请参阅此处的讨论:Is it bad practice to access S4 objects slots directly using @?

© www.soinside.com 2019 - 2024. All rights reserved.