簡體   English   中英

如何為 Pandas 數據框列中的每個唯一值添加重復的月份行?

[英]How do I add repeated month rows for every unique value in a pandas dataframe column?

我有一個如下所示的數據框:

df1 = pd.DataFrame({'Part':['Wheel', 'Door', 'Light', 'Seatbelt']})

在此處輸入圖片說明

我想為'part'每個唯一值添加月份列,以便我得到一個如下所示的數據框:

df2 = pd.DataFrame({'Part':['Wheel','Wheel','Wheel','Wheel','Wheel','Wheel','Wheel','Wheel'
                        ,'Door','Door','Door','Door','Door','Door','Door','Door'
                        ,'Light','Light','Light','Light','Light','Light','Light','Light'
                       ,'Seatbelt', 'Seatbelt','Seatbelt','Seatbelt','Seatbelt','Seatbelt','Seatbelt','Seatbelt',]
               ,'Month':['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August',
                        'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August',
                        'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August',
                        'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August',]})

在此處輸入圖片說明

pandas python 中是否有一個函數可以讓我為每個唯一值添加這些行?

主要思想是,一旦我創建了這個數據幀,我就可以將另一個數據幀合並到這個數據幀,這樣一旦合並,它們就會顯示零值。

itertools.product與傳遞給 DataFrame 構造函數的月份列表一起使用:

from  itertools import product

months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August']
df = pd.DataFrame(product(df1['Part'].unique(), months), columns=['Part','Month'])

print (df)
        Part     Month
0      Wheel   January
1      Wheel  February
2      Wheel     March
3      Wheel     April
4      Wheel       May
5      Wheel      June
6      Wheel      July
7      Wheel    August
8       Door   January
9       Door  February
10      Door     March
11      Door     April
12      Door       May
13      Door      June
14      Door      July
15      Door    August
16     Light   January
17     Light  February
18     Light     March
19     Light     April
20     Light       May
21     Light      June
22     Light      July
23     Light    August
24  Seatbelt   January
25  Seatbelt  February
26  Seatbelt     March
27  Seatbelt     April
28  Seatbelt       May
29  Seatbelt      June
30  Seatbelt      July
31  Seatbelt    August

暫無
暫無

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

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