私はごく最近、必要に迫られて R を学び始めましたが、これまでのところ、とても良いと思います。しかし、私はまだ非常に初期の段階にいます。しかし、私はRでこの大きな緊急の課題に直面しており、助けていただければ幸いです. 私のプログラミングスキルは明らかにアマチュアであり、私が得ることができるどんな助けも間違いなく受け入れます. ここに行きます:
- GEOquery パッケージを使用して GEO データベースから取得するデータセットのリスト (gdslist) を作成するには
- gdslist 項目 (gdsid) を式データに変換します。つまり、私の分析で使用できるデータです。これには、GDS2eSet 関数が問題なく機能します。
- クラス/レベル ファイル (.cls) を作成できるように、この変換された式データを読み込みます。たとえば、GDS3715 データセットには、インスリン抵抗性、インスリン感受性、糖尿病の 3 つのレベルがあります。場合によっては、データセットはそれほど単純です。ただし、この場合のように、表現型には 3 つのレベルがありますが、治療グループと非治療グループに分けられているため、分析目的でレベルは 6 になります。そのような場合、「エージェント」列が追加されることがよくあります。各クラス/レベルには数値 (0、1、2...) を割り当てる必要があります。これは、ほとんどの .cls ファイルの一般的な形式です。
- Siggenes/SAM 分析 (R のパッケージでもあります) を実行するには、データセットごとに 2 つのファイルが必要です: 式ファイル (上記 2 から変換されたファイル) と付随するクラスター ファイル (3 から)。
- 一種のループで gdslist アイテムに対してこのプロセスを実行し、指定したディレクトリにデータを保存できるようにします。
現在、ステップ 2 までしか到達できません。ステップ 3 が課題の核心だと思います...
どうぞよろしくお願いいたします。
これまでのスクリプト:
> gdslist = c('GDS3715','GDS3716','GDS3717'...)#up to perhaps 100 datasets
> analysisfunc = function(gdsid) {
gdsdat = getGEO(gdsid,destdir=".")
gdseset = GDS2eSet(gdsdat)
pData(gdseset)$disease.state #Needed assignment, etc...Step 3 stuff ;Siggenes/SAM can perhaps be done here
return(sprintf("Results from %s should be here",gdsid))
}
> resultlist = sapply(gdslist,analysisfunc) #loop function