Sloty klasy S4 jako lista

Przedstawiam bardzo prostą funkcję, która przekształca prosty (bez slotów zagnieżdżonych w slotach) obiekt klasy S4 do listy, przy czym zwraca jednynie nie puste sloty:

slot.as.list<-function(object){
	sn<-slotNames(object)
	tmp<-list()
	for(i in sn)
		if(!is.empty(slot(object,i))) tmp[[i]]<-slot(object,i)
	return(tmp)
}

Created by Pretty R at inside-R.org

*Wymaga funkcji is.empty. Usunięcie warunku spowoduje, że funkcja zwróci także puste sloty i nie będzie wymagała wymienionej funkcji.

admin środa, 07 grudzień 2011 - 5:48 pm | | Blog-R