मेरे पास यह डीएफ है:
Home Away 5+ corners 6+ corners 7+ corners 8+ corners 9+ corners 10+ corners 11+ corners 12+ corners 13+ corners 14+ corners
0 Aston Villa Leeds 1/100 1/50 1/20 1/8 1/4 4/9 4/6 11/10 13/8 5/2
1 West Ham Manchester City 1/100 1/33 1/12 1/6 1/3 4/7 10/11 11/8 2/1 3/1
2 Fulham Crystal Palace 1/66 1/33 1/10 1/5 2/5 4/6 11/10 7/4 5/2 4/1
3 Manchester Utd Chelsea 1/66 1/33 1/8 1/5 2/5 8/11 11/10 15/8 11/4 4/1
4 Liverpool Sheffield Utd 1/100 1/50 1/20 1/8 2/7 4/9 8/11 11/10 7/4 5/2
5 Southampton Everton 1/66 1/33 1/12 1/5 4/11 8/13 1/1 13/8 5/2 7/2
6 Wolves Newcastle 1/50 1/20 1/8 2/7 1/2 4/5 5/4 2/1 3/1 5/1
7 Arsenal Leicester 1/100 1/33 1/12 1/6 1/3 1/2 10/11 11/8 2/1 3/1
8 Brighton West Brom 1/66 1/33 1/8 1/4 2/5 4/6 11/10 7/4 11/4 4/1
9 Burnley Tottenham 1/100 1/33 1/12 1/6 1/3 4/7 10/11 11/8 9/4 3/1
जिसे मैं दशमलव ऑड्स में बदलना चाहूंगा।
मुझे पता है कि मैं इसे प्राप्त करने के लिए .split('/')
का उपयोग कर सकता हूं लेकिन यह सोच रहा था कि ऐसा करने का कोई तेज़ तरीका है या नहीं।
3 जवाब
जैसा कि @ch3steR द्वारा सुझाया गया है, pd.eval
का प्रयोग करें और इसे आजमाएं
df['col_name'] = pd.eval(target=df, expr=df['col_name'])
eval फ़ंक्शन के बारे में क्या?
result = eval('1/2')
संपादित करें: जैसा कि टिप्पणीकारों ने बताया है, eval में सुरक्षा संबंधी चिंताएं हैं, क्योंकि इसमें मनमानी कोड निष्पादित करने की क्षमता है।
आप पांडा का उपयोग कर सकते हैं apply
< /a> और eval
एक साथ
df.loc[:,'5+ corners':] = df.loc[:,'5+ corners':].apply(pd.eval)
>>> print(df)
>>>
Home Away 5+ corners ... 12+ corners 13+ corners 14+ corners
0 AstonVilla Leeds 0.01 ... 1.1 1.625 2.5
1 WestHam ManchesterCity 0.01 ... 1.375 2 3
2 Fulham CrystalPalace 0.0151515 ... 1.75 2.5 4
3 ManchesterUtd Chelsea 0.0151515 ... 1.875 2.75 4
4 Liverpool SheffieldUtd 0.01 ... 1.1 1.75 2.5
यह केवल 100 पंक्तियों तक के डेटाफ़्रेम के लिए काम करेगा , देखें यहां
संबंधित सवाल
जुड़े हुए प्रश्न
नए सवाल
python
पायथन एक बहु-प्रतिमान है, गतिशील रूप से टाइप किया हुआ, बहुउद्देशीय प्रोग्रामिंग भाषा है। यह एक साफ और एक समान वाक्यविन्यास सीखने, समझने और उपयोग करने के लिए त्वरित होने के लिए डिज़ाइन किया गया है। कृपया ध्यान दें कि अजगर 2 आधिकारिक तौर पर 01-01-2020 के समर्थन से बाहर है। फिर भी, संस्करण-विशिष्ट पायथन सवालों के लिए, [अजगर -२.०] या [अजगर -३.x] टैग जोड़ें। पायथन वेरिएंट (जैसे, ज्योथन, PyPy) या लाइब्रेरी (उदा।, पांडस और न्यूमपी) का उपयोग करते समय, कृपया इसे टैग में शामिल करें।