मेरे पास विभिन्न प्रकार के जीनोमिक पदों के लिए डेटा की डेटा तालिका है। पदों को 3-टुपल्स ('गुणसूत्र', 'srand', स्थिति) के रूप में दर्शाया गया है कि मैं एक बहु-सूचकांक में बदल गया हूं। मेरा लक्ष्य प्रत्येक स्थिति के बारे में विभिन्न जानकारी देखना और तालिका में जोड़ना है (उदाहरण के लिए जीन नाम, आदि) मैं इसे pybedtools के साथ कर सकता हूं।मैं पांडा में बहु-अनुक्रमणिका के साथ मानचित्र का उपयोग कैसे कर सकता हूं?
df = pd.DataFrame(data={'A':range(1,8), 'B':range(1,8), 'C': range(1,8)},
index=pd.MultiIndex.from_tuples([('chrom1', '-', 1234), ('chrom1', '+', 5678),
('chrom1', '+', 9876), ('chrom2', '+', 13579), ('chrom2', '+', 8497), ('chrom2', '-', 98765),
('chrom2', '-', 76856)]))
df.index.rename(['chrom','strand','abs_pos'], inplace=True)
A B C
chrom strand abs_pos
chrom1 - 1234 1 1 1
+ 5678 2 2 2
9876 3 3 3
chrom2 + 13579 4 4 4
8497 5 5 5
- 98765 6 6 6
76856 7 7 7
मेरे मुद्दा एक बहु सूचकांक के साथ एक डेटा फ्रेम में कॉलम जोड़ने के साथ है। यह एक बहु-सूचकांक के बिना सीधे आगे लगता है: pandas - add new column to dataframe from dictionary
मेरे पास बहु-अनुक्रमणिका के अनुरूप 3-ट्यूपल कुंजी के साथ लुकअप जानकारी का एक शब्दकोश है। मैं इस डेटा को नए कॉलम के रूप में कैसे जोड़ सकता हूं?
gene_d = {('chrom1', '-', 1234) : 'geneA', ('chrom1', '+', 5678): 'geneB',
('chrom1', '+', 9876): 'geneC', ('chrom2', '+', 13579): 'geneD',
('chrom2', '+', 8497): 'geneE', ('chrom2', '-', 98765): 'geneF',
('chrom2', '-', 76856): 'geneG'}
मैं नक्शा की कोशिश की है, लेकिन यह पता लगाने की कि यह कैसे एक बहु सूचकांक के साथ काम करने के लिए प्राप्त करने के लिए निम्नलिखित उपज के लिए प्रतीत नहीं कर सकते हैं:
A B C
chrom strand abs_pos gene
chrom1 - 1234 geneA 1 1 1
+ 5678 geneB 2 2 2
9876 geneC 3 3 3
chrom2 + 13579 geneD 4 4 4
8497 geneE 5 5 5
- 98765 geneF 6 6 6
76856 geneG 7 7 7