亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

從列表列表創建數據幀

從列表列表創建數據幀

RISEBY 2022-08-25 14:13:42
我有兩個列表列表,如下所示ingre_list = [['chicken','oil',  'garlic',  'pepper',  'juice',  'sugar',  'ketchup',  'vinegar',  'water',  'sauce'], ['butter', 'sugar', 'eggs', 'bananas', 'salt'], ['pork',  'beef',  'egg',  'cheese',  'bread',  'garlic',  'salt',  'pepper',  'milk',  'parsley'], ['beef',  'bread',  'egg',  'onions',  'salt',  'pepper',  'ketchup',  'milk',  'vinegar',  'sugar',  'ketchup'], ['salt', 'sugar', 'butter'], ['sausage',  'garlic',  'tomatoes',  'sauce',  'water',  'basil',  'parsley',  'sugar',  'salt',  'pepper',  'pepper',  'spaghetti',  'cheese'], ['bananas',  'juice',  'salt',  'butter',  'sugar',  'eggs',  'butter',  'cheese',  'cream',  'sugar'], ['beef', 'gravy', 'dressing', 'dressing', 'water'], ['salt', 'butter', 'sugar', 'sugar', 'eggs', 'oats', 'raisins']] quan_list= [['2 lbs',  '2',  '2',  '3/4 teaspoon',  '1/4 cup',  '1/3 cup',  '2 tablespoons',  '1 tablespoon',  '1/2 cup',  '1/3 cup'], ['1/2 cup', '1 cup', '1', '1', '1/2 teaspoon'], ['1/2',  '1/2',  '1/2',  '1/2 cup',  '1/3 cup',  '1/3',  '1/3',  '1 teaspoon',  '1/3 cup',  '1/4 cup'], ['1/4',  '1/4',  '1/4',  '1/4',  '1 teaspoon',  '1/4 teaspoon',  '4 tablespoons',  '1/2-2/3 cup',  '4 tablespoons',  '4',  '1/2 cup'], ['1 teaspoon', '1/4 cup', '1/2 cup'], ['2 lbs',  '2',  '2',  '2',  '2 cups',  '3 teaspoons',  '2 teaspoons',  '2',和 的長度相同。兩個列表的每個內部列表的長度相同。例如,具有 與 相同的大小。我想從這些列表中創建一個數據幀,其中標題是 來自 的項目,每個項目都應該在標題中出現一次。然后,每行應包含 來自 的成分的數量。為了創建空數據幀,我使用了以下代碼:quan_listingre_listquan_list[0]ingre_list[0]ingre_listquan_listunique_ingre= set(x for l in ingre_list for x in l)df1 = pd.DataFrame(columns=unique_ingre)現在我很難在每行中插入數量。示例數據幀考慮值和ingre_list[0]quan_list[0]bread egg chicken   sugar      dressing ..... water    garlic           2 lbs   1/3 cup                    1/2 cup      2如果有人能幫助我,它真的非常感謝。只是為了讓你知道quan_list和ingre_list的長度可能會增加。如果這個東西可以寫在python的csv文件中,那也很好。
查看完整描述

1 回答

?
largeQ

TA貢獻2039條經驗 獲得超8個贊

你可以試試,注意我正在添加,并且由于您在每個子列表中都有重復的項目,如果在真實數據中沒有重復項,則可以刪除groupbyheadingre_list.groupby(level=0).head(1)

s=pd.concat([pd.Series(y, index=x).groupby(level=0).head(1) for x , y in zip(ingre_list , quan_list)],axis=1).T



查看完整回答
反對 回復 2022-08-25
  • 1 回答
  • 0 關注
  • 76 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號