मेरे पास एक सीएसवी फ़ाइल है जिसमें 3 कॉलम हैं। कॉलम में से एक में कुंजी मान के रूप में डेटा होता है।

उदाहरण (स्रोत, विषय और दृश्य कॉलम हैं)

Source        Topic                                                       Views

Web        {"title":"Weather for Paris 
            ","object":"storm,hail","description":"thunderstorm"}          234

यहां कॉलम टॉपिक में कुंजी मान के रूप में मान हैं। यहाँ कुंजी शीर्षक, वस्तु और विवरण हैं। मैं सिर्फ सीएसवी में सभी रिकॉर्ड्स के लिए कुंजी 'शीर्षक' के तहत मान निकालना चाहता हूं।

अपेक्षित उत्पादन

Weather for Paris

पायथन का उपयोग करके इसे कैसे पूरा करें?

1
Ridhima Kumar 5 पद 2018, 22:10

1 उत्तर

सबसे बढ़िया उत्तर
df = pandas.read_csv('dict.csv', usecols = ['Topic'], sep = '|')
df['Topic'].apply(lambda x: json.loads(x)['title']).values

जहां dict.csv की संरचना है

Source|Topic|Views
Web|{"title":"Weather for Paris","object":"storm,hail","description":"thunderstorm"}|34

ध्यान दें कि मैंने विभाजक | जोड़ा है, अन्यथा शब्दकोश ठीक से पार्स नहीं करेगा। एक अन्य विकल्प कुछ इस तरह है

Source,Topic,Views
Web,"{""title"":""Weather for Paris"",""object"":""storm,hail"",""description"":""thunderstorm""}",34

इस मामले में आपको केवल sep विकल्प को कॉल से read_csv पर छोड़ना होगा

0
caverac 5 पद 2018, 22:36