2017-12-04 13 views
-1

私は3シリーズありパンダデータフレーム持っている:データフレームにパンダのデータフレーム3

import pandas as pd 
    import json 
    import xml.etree.ElementTree as ET 

    df1 = pd.read_excel("C:\\Users\\Desktop\\xml.xlsx") 
    df1['response'] = df1['response'].astype(str) 

    tree = ET.parse(df1.response[1]) #This does not work 

シリーズのとおりです。

userid, appid, response 

「応答」であるという問題xmlドキュメント。私は全体をJSONに変換する必要があります。ことを意味し、このような何か:私は問題はJSONにXMLを変換することである、その後、ユーザーIDにマッピングしていたに

"userid" : "21", 
    "appid" : "40", 
    "response" : {"xml document as json"} 

ステップ。

サンプルXML:

<transactionControl> 
<userRefNumber>Credit Report Example</userRefNumber> 
<subscriber> 
    <industryCode>Z</industryCode> 
    <memberCode>03919359</memberCode> 
    <inquirySubscriberPrefixCode>1704</inquirySubscriberPrefixCode> 
</subscriber> 
<options> 
    <country>us</country> 
    <language>en</language> 
</options> 
<tracking> 
    <transactionTimeStamp>2014-08-02T04:27:02.808-05:00</transactionTimeStamp> 
</tracking> 

答えて

0

私はあなたがjson.loadsによってjson秒にstring秒に変換する必要があると考えている:

df1['response'] = df1['response'].astype(str).apply(pd.io.json.loads) 

または使用:

import ast 
df1['response'] = df1['response'].astype(str).apply(ast.literal_eval) 
+0

'ValueError:期待されるオブジェクトまたは値'。私はあなたに問題があることを願っています。 'response'は大きなxml文書を含んでいます。この例のようにjsonに全体を変換する必要があります。 –

+0

私は変換するための別の解決策を追加しましたが、データは無回答でした... – jezrael

+0

xmlを追加する質問を編集しました。私は非常に少ない量のXMLを投稿しました。実際のデータには大きなxmlファイルが含まれています。 –