आपके डेटा स्रोत मानते हुए, एक csv फ़ाइल में है
from pandas.io.parsers import read_csv
df = read_csv("radar_data.csv")
df # shows what is in df
loc speed time
0 A 63 0
1 B 61 0
2 C 63 0
3 D 65 0
4 A 73 5
5 B 73 5
6 C 75 5
7 D 75 5
8 A 67 0
9 B 68 0
10 C 68 0
11 D 70 0
ध्यान दें कि मैं सूचकांक के रूप में loc
सेट नहीं किया अभी तक तो यह एक autoincrement पूर्णांक सूचकांक का उपयोग करता है।
panel = df.set_index(['loc', 'time']).sortlevel(0).to_panel()
हालांकि, यदि आपका डेटा फ्रेम पहले से ही सूचकांक के रूप में loc
उपयोग कर रहा है, हम इस पर ध्यान time
स्तंभ संलग्न करने के लिए इतना है कि हम एक loc समय hierarchal सूचकांक है की आवश्यकता होगी। यह set_index
विधि में नए append
विकल्प का उपयोग करके किया जा सकता है। इस तरह: -
panel = df.set_index(['time'], append=True).sortlevel(0).to_panel()
या तो मामले में, हम इस परिदृश्य पर पहुंचने चाहिए: -
panel # shows what panel is
<class 'pandas.core.panel.Panel'>
Dimensions: 1 (items) x 4 (major) x 2 (minor)
Items: speed to speed
Major axis: A to D
Minor axis: 0 to 5
panel["speed"] # <--- This is what you are looking for.
time 0 5
loc
A 63 67
B 73 61
C 68 73
D 63 68
आशा इस मदद करता है।
स्रोत
2012-11-04 05:24:25
आह ... अच्छी चाल। धन्यवाद! –
मुझे "ReshapeError का परिणाम मिलता है: इंडेक्स में डुप्लिकेट प्रविष्टियां होती हैं, रीशेप नहीं कर सकती"। मेरे कुछ स्थान उनमें रिक्त स्थान के साथ तार हैं, क्या इससे संबंधित हो सकता है? –
ये। मेरे लिए भी काम नहीं करता है। मुझे 'ReshapeError मिलता है: इंडेक्स में डुप्लिकेट प्रविष्टियां होती हैं, फिर भी रीशेप नहीं कर सकती हैं। –