Einschließen eines S4-Objekts aus einem vorhandenen Paket als Slot in eine neue S4-Klasse

Ich schreibe eine S4-Klasse namensExpression und möchte ein S4-Objekt einbinden,DESeq2 = "DESeqDataSet" als Slot:

setClass(
Class = "Expression",
representation = representation (
    species = "character", 
    edgeR = "DGEList",
    DESeq2 = "DESeqDataSet",
    lengths = "matrix",
    individuals = "vector",
    treatments = "vector",
    id = "vector",
    samples = "vector",
    sample_prep = "vector",
    genome_type = "vector",
    molecule_type = "vector",
    blast_hit =  "vector",
    rRNA = "vector",
    protein = "vector"
))

Wenn ich das Paket überprüfe, erhalte ich die folgende Warnung:

Found the following significant warnings:
  Warning: undefined slot classes in definition of "Expression": DESeq2(class "DESeqDataSet")

Die Klasse funktioniert einwandfrei (dh es gibt jetzt Fehler), aber ich möchte alle Warnungen in unserem Code korrigieren.

Das Paket mit demDESeqDataSet Objekt DESeq2, auch der Name, den wir dem Slot gegeben haben) wird in das Paket @ importieDESCRIPTION Datei. Muss ich etwas anderes tun, um den Inhalt für die Verwendung in einem Slot verfügbar zu machen? Zum Beispiel habe ich @ verwendsetOldClass(), um S3-Klassen für die Verwendung in S4-Slots verfügbar zu machen.

Hier ist ein Beispiel für einen Travis-Ci-Build, der die Warnung auslöst -https: //travis-ci.org/caseywdunn/agalmar/builds/13856425

Der vollständige Code, der das Problem verursacht, befindet sich unterhttps: //github.com/caseywdunn/agalmar/blob/a7c4013fcb5c924cfd6e1aa8e99f182ceec6fe20/R/utility_functions.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage