私はcsvfilesを使っています。私の目標は、csvfile情報を持つjson形式を書くことです。コードIで、しかしpandasシリーズとDataFrameを使ってjsonフォーマットを書いてください
[
{
"source": "Germany",
"target": "Mexico",
"value": 1
},
{
"source": "Germany",
"target": "USA",
"value": 2
},
{
"source": "Brazil",
"target": "Argentina",
"value": 3
}
]
:私はフォーマットは次のようになります持っている情報によると
{"source": "Napoleon", "target": "Myriel", "value": 1},
:Especifically、私はmiserables.json
例と同様の形式を取得したいです出力は次のように使用されます:
[
{
"source": "Germany",
"target": "Mexico",
"value": 1
},
{
"source": null,
"target": "USA",
"value": 2
}
][
{
"source": "Brazil",
"target": "Argentina",
"value": 3
}
]
Null
ソース必須ドイツ。この問題を抱える都市が増えているため、これは主要な問題の1つです。この他に、情報は正しいです。私はちょうどフォーマットの中のいくつかのリストを削除し、正しい国にヌルを置き換えたいです。
これはpandas
とcollections
を使用して使用したコードです。
csvdata = pandas.read_csv('file.csv', low_memory=False, encoding='latin-1')
countries = csvdata['country'].tolist()
newcountries = list(set(countries))
for element in newcountries:
bills = csvdata['target'][csvdata['country'] == element]
frquency = Counter(bills)
sourceTemp = []
value = []
country = element
for k,v in frquency.items():
sourceTemp.append(k)
value.append(int(v))
forceData = {'source': Series(country), 'target': Series(sourceTemp), 'value': Series(value)}
dfForce = DataFrame(forceData)
jsondata = dfForce.to_json(orient='records', force_ascii=False, default_handler=callable)
parsed = json.loads(jsondata)
newData = json.dumps(parsed, indent=4, ensure_ascii=False, sort_keys=True)
# since to_json doesn´t have append mode this will be written in txt file
savetxt = open('data.txt', 'a')
savetxt.write(newData)
savetxt.close()
この問題を解決するためのあらゆる提案があります。
おかげ
入力CSVファイルの一部の行を入力できますか? –