簡體   English   中英

從列表中篩選並生成子DataFrame

[英]Filter and Generate Sub-DataFrame From a List

我有一setCompanyList={'Apple','LG','Samsung'}pandas DataFrame

sales=[{'name':'Samsung Korea','model':'S1'},
   {'name':'Samsung Vienam','model':'J1'},
   {'name':'LG America','model':'L1'}
  ]
df=pd.DataFrame(sales)

我想瀏覽CompanyList,然后從“銷售” DataFrame生成新的Sub-DataFrame。 預期結果是

dataSamsung = [{'name': 'Samsung', 'model': 'S1'},{'name': 'Samsung', 'model': 'J1'}] 

dataLG = [{'name': 'LG', 'model': 'L1'}]

我試過了:

 customer={}
 for i in companyList:
       customer[i] = df[df.name.str.contains('i')]

但這給了我一個錯誤的答案。 您能幫我解決這個問題嗎?

嘗試apply

df['name']=df['name'].apply(lambda x: [i for i in CompanyList if i in x][0])

apply list comprehension

暫無
暫無

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

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