如何快速创建具有重复值的数据帧

2024-09-29 01:24:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我只想用代码构建一个3000行长的数据帧(到目前为止,我从XLS导入文档),遵循以下规则:

顶部索引:enter image description here

航班号:我想在另一个更简单的数据框中定义航班号。航班号保持24次不变(见起飞时间)。数据帧如下所示:

df = pd.DataFrame({'Flight Number':['LX2104','LX2105','LX2320','LX2321','LX1232','LX1232'], 
               'Leg Route': ['GVA-AGP','GVA-AGP','GVA-AJA','GVA-AJA','GVA-ARN','GVA-ARN']})
               'Leg Flight Pair': ['LX2104/2105','LX2104/2105','LX2320/2321','LX2320/2321','LX1232/1233','LX1232/1233']})

enter image description here

标准偏差:从-到23(-,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23) 航段航线:与航班号类似,这也将在数据帧中定义(上面的df) 航段航班对:类似于航班号和航段航线,这也将在数据帧中定义(上面的df) 产品:我会在列表中列出产品名称

这将是预期结果的开始enter image description here


Tags: 数据df定义arnflightleg航线agp
1条回答
网友
1楼 · 发布于 2024-09-29 01:24:16
df = pd.DataFrame({
    'Flight Number':['LX2104','LX2105','LX2320','LX2321','LX1232','LX1232'], 
    'Leg Route': ['GVA-AGP','GVA-AGP','GVA-AJA','GVA-AJA','GVA-ARN','GVA-ARN'],
    'Leg Flight Pair': ['LX2104/2105','LX2104/2105','LX2320/2321','LX2320/2321','LX1232/1233','LX1232/1233']
})
n_flights = len(df)
df = pd.concat([df]*24).sort_values('Flight Number').reset_index(drop=True)
df['STD Departure'] = np.tile(np.arange(24), n_flights)
cols = ['Prod1', 'Prod2']
for col in cols:
  df[col] = 0

输出

>>> df.head()

Flight Number   Leg Flight Pair     Leg Route   STD Departure   Prod1   Prod2
0   LX1232      LX1232/1233         GVA-ARN             0           0       0
1   LX1232      LX1232/1233         GVA-ARN             1           0       0
2   LX1232      LX1232/1233         GVA-ARN             2           0       0
3   LX1232      LX1232/1233         GVA-ARN             3           0       0
4   LX1232      LX1232/1233         GVA-ARN             4           0       0

相关问题 更多 >