मैं एक data.frame जिसमें प्रत्येक जीन नाम बार-बार और 2 स्थितियों के लिए मान शामिल है:एक डेटा फ्रेम में लगातार पंक्तियों के जोड़े betwen अंतर की गणना - आर
df <- data.frame(gene=c("A","A","B","B","C","C"),
condition=c("control","treatment","control","treatment","control","treatment"),
count=c(10, 2, 5, 8, 5, 1),
sd=c(1, 0.2, 0.1, 2, 0.8, 0.1))
gene condition count sd
1 A control 10 1.0
2 A treatment 2 0.2
3 B control 5 0.1
4 B treatment 8 2.0
5 C control 5 0.8
6 C treatment 1 0.1
मैं अगर गणना करना चाहते हैं वहाँ उपचार के बाद "गिनती" में वृद्धि या कमी है और उन्हें चिह्नित करें और/या उन्हें सबसेट करें। (पिछले कॉलम वैकल्पिक है)
for each unique(gene) do
if df[geneRow1,3]-df[geneRow2,3] > 0 then gene is "up"
else gene is "down"
यह वही है अंत में दिखाई देना चाहिए:: यह (छद्म कोड) है
up-regulated
gene condition count sd regulation
B control 5 0.1 up
B treatment 8 2.0 up
down-regulated
gene condition count sd regulation
A control 10 1.0 down
A treatment 2 0.2 down
C control 5 0.8 down
C treatment 1 0.1 down
मैं इस के साथ मेरे दिमाग बटोर कर दिया है, के साथ खेल सहित ddply, और मैं एक समाधान खोजने में विफल रहा है - कृपया एक बेकार जीवविज्ञानी।
चीयर्स।
शानदार, यह काम किया! मुझे लगा कि डीडीपीई जवाब का हिस्सा हो सकता है लेकिन मुझे नहीं लगता कि मैं कभी भी reg.fun के साथ आऊंगा। चीयर्स। – fridaymeetssunday
@krespim और यहां एक [बेंचमार्क] (http://stackoverflow.com/revisions/11463757/3) पंक्तियों के समूह को जोड़ना है जो plyr से डेटा.table की तुलना करता है। –