2017-07-12 1 views
1

をPythonのデータフレームを取得する方法は、私のようなヘルパー関数があると?このアプローチでElasticSearch helpers.scan結果から

result_helper = list(helpers.scan(es, scroll='2m', query={"query": {"match_all": {}}} ,index="test", size=1000, _source=('logtime','host_name', 'kv', 'value'))) 
df = pd.DataFrame(result_helper) 

私はデータフレームを得るが、_source列内のリストに:

_id       _index  _score  _source    _type  sort 
0 AVz3qBfbLK0jC-lSNFjT test   None  {u'host_name': u'hostxyz', u'kv': u'Memory_an... logs [0] 

どのようにしてhelpers.scan結果からのデータフレームを作成することができます_sourceリストの各キーの列は? 例:私は以下のソリューションを開発しているいくつかの考慮事項および試験後

hostname memory ... 
1 hostxyz 1024GB ... 
2  .  .   
3  .  . 
4  .  . 

答えて

0

result_helper_list = list(helpers.scan(es, scroll='2m', query={"query": {"match_all": {}}} ,index="check_mk_wnp_csh", size=1000, _source=('logtime','host_name', 'kv', 'value'))) 

df_result = json_normalize(result_helper_list) 

を私は(列としてリストを取得します所望により):

df_result.columns 

>  Index([u'_id', u'_index', u'_score', u'_source.host_name', u'_source.kv', 
      u'_source.logtime', u'_source.value', u'_type', u'sort'], 
      dtype='object') 
関連する問題