2016-10-31 7 views
6

मैं वाक्य रचनादोनों एक पंक्ति और पांडा में एक ही बार में एक कॉलम

import pandas as pd 
df = pd.DataFrame([[1,0],[0,1]]) 
df.style.apply(lambda x: ['background: lightblue' if x.name == 0 else '' for i in x]) 

enter image description here

का उपयोग कर एक स्तंभ को हाइलाइट कर सकते हैं इसी तरह मैं axis=1 पास करके एक पंक्ति हाइलाइट कर सकते हैं उजागर करने के लिए कैसे:

df.style.apply(lambda x: ['background: lightgreen' if x.name == 0 else '' for i in x], 
       axis=1) 

enter image description here

हालांकि मैं नहीं कर सकता एक बार में दोनों को कैसे करना है; समस्या यह है कि जब मैं applymap का उपयोग करता हूं, तो मुझे केवल मूल्य मिलते हैं, न कि श्रृंखला के नाम जो वे आते हैं।

उत्तर

6

इस तरह कुछ करने के बारे में कैसे? स्तंभ की गणना करें और सूचकांक जाँच जबकि शैली सूची का निर्माण:

df.style.apply(lambda x: ['background: lightblue' if x.name == 0 or i == 0 else '' 
          for i,_ in x.iteritems()]) 

enter image description here

या यदि आप रंग प्राथमिकता है:

df.style.apply(lambda x: [('background: lightblue' if x.name == 0 
          else ('background: lightgreen' if i == 0 else '')) 
          for i,_ in x.iteritems()]) 

enter image description here

+0

हाँ यह सही तरीका है ... अब स्पष्ट लगता है, किसी कारण से मुझे इसके चारों ओर सिर लपेटने में परेशानी हो रही थी! – maxymoo

संबंधित मुद्दे