簡體   English   中英

創建列表列表,列表作為查找表

[英]Create a list of lists, List as look up table

我需要根據列表的結果創建列表列表作為查找表

列表

lists=['a','b','c']

數據

[
  {'rank': 1, 'keyword_name': 'keyword1', 'volume': None, 'asin': 'a'},
  {'rank': 30, 'keyword_name': 'keyword2', 'volume': None, 'asin': 'b'}
  {'rank': 4, 'keyword_name': 'keyword3', 'volume': 123, 'asin': 'c'}

  {'rank': 5, 'keyword_name': 'keyword3', 'volume': None, 'asin': 'c'}
]

所以新的列表列表將是

// format of result

keyword_name|volume|rank


result = [
    ['keyword1',None,1],
    ['keyword2',None,30],
    ['keyword3',123,4],
    ['keyword3',None,5]
]

我的初始代碼如下所示

results = []
for list in lists:
    for res in data:
        if res['asin'] == list:
           results.append(res)

但我們都知道它不起作用。我需要將結果作為數據放入熊貓數據框,但我不知道如何實現它

 import pandas as pd


 df = pd.DataFrame(data=results, columns=lists)

你為什么不簡單地使用pd.DataFrame.from_records(data)

data = [
  {'rank': 1, 'keyword_name': 'keyword1', 'volume': None, 'asin': 'a'},
  {'rank': 30, 'keyword_name': 'keyword2', 'volume': None, 'asin': 'b'},
  {'rank': 4, 'keyword_name': 'keyword3', 'volume': 123, 'asin': 'c'},
  {'rank': 5, 'keyword_name': 'keyword3', 'volume': None, 'asin': 'c'}
]

df = pd.DataFrame.from_records(data)

甚至簡單地說:

df = pd.Dataframe(data)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM