以下のクエリはデータを取得してCSVファイルを作成していますが、問題は「SPLE」という名前のソースがデータベースに0,150のデータを格納することです。数値データをCSVファイルのテキストに変更します
しかしCSVでこれらの数字はCSVに収集されており、そのような
0 =真
1 = Falseの
、などの単語を表現するために、それらの番号をCSVを作成するときに、私は何とか希望50 =保留中
誰かが私にこれをどのようにしてくれているか教えてもらえますか、私はこれに苦労していますか?
マイコード:
from elasticsearch import Elasticsearch
import csv
es = Elasticsearch(["9200"])
res = es.search(index="search", body=
{
"_source": ["DTDT", "TRDT", "SPLE", "RPLE"],
"query": {
"bool": {
"should": [
{"wildcard": {"CN": "TEST*"}}
]
}
}
}, size=10)
header_names = { 'DTDT': 'DATE', 'SPLE': 'TAG', ...}
with open('mycsvfile.csv', 'w') as f:
header_present = False
for doc in res['hits']['hits']:
my_dict = doc['_source']
if not header_present:
w = csv.DictWriter(f, my_dict.keys())
w.writerow(header_names)
header_present = True
w.writerow(my_dict)
CSVファイルで出力する:FYI
Date SPLE Venue
20171016 1 Central
20171016 1 Central
20171016 0 Central
20171016 0 Central
20171016 50 Central
20171016 0 Central
20171016 1 Central
:私はパンダを使用しようとしました
しかし、私はので、私はパンダをインストールすることができませんこれに別の方法があるのだろうかと疑問に思っていますか?
変更my_dict' 'の内容、ニーズに従ってためのループでw.writerow(my_dict)' 'の前に。 – ZdaR
私に教えてもらえますか?私はそれが間違っていると思う – Rich