簡體   English   中英

如何在沒有重復的情況下更新da Pandas Panel

[英]How to update da Pandas Panel without duplicates

目前,我正在為賽車應用程序開發Livetiming軟件。 因此,我必須抓取Livetiming網頁並將數據復制到大數據框。 該數據框是我要制作的幾個圖表的來源。 為了使我的數據框保持最新狀態,我不得不經常抓取該網頁。

我可以下載數據並將其另存為Panda.Dataframe。 但是我的問題是從下載的DataFrame到包含所有數據的Big Dataframe。

import pandas as pd
import numpy as np
df1= pd.DataFrame({'Pos':[1,2,3,4,5,6],'CLS':['V5','V5','V5','V4','V4','V4'],
                 'Nr.':['13','700','30','55','24','985'],
                 'Zeit':['1:30,000','1:45,000','1:50,000','1:25,333','1:13,366','1:17,000'],
                 'Laps':['1','1','1','1','1','1']})

df2= pd.DataFrame({'Pos':[1,2,3,4,5,6],'CLS':['V5','V5','V5','V4','V4','V4'],
                 'Nr.':['13','700','30','55','24','985'],
                 'Zeit':[np.nan,np.nan,np.nan,np.nan,np.nan,np.nan,],
                 'Laps':['2','2','2','2','2','2']})
df3= pd.DataFrame({'Pos':[1,2,3,4,5,6],'CLS':['V5','V5','V5','V4','V4','V4'],
                 'Nr.':['13','700','30','55','24','985'],
                 'Zeit':['1:31,000','1:41,000','1:51,000','1:21,333','1:11,366','1:11,000'],
                 'Laps':['2','2','2','2','2','2']})
df1.set_index(['CLS','Nr.','Laps'],inplace=True)
df2.set_index(['CLS','Nr.','Laps'],inplace=True)
df3.set_index(['CLS','Nr.','Laps'],inplace=True)

df1顯示了前幾圈的數據幀。 df2在第二圈顯示了一個數據框。 膝部未完成,所以我有男。 df3顯示第二圈完成后的數據幀。

我的目標是每班每輛汽車的每一圈只有一行。 我有一個問題,就是我的重復項不完整或所有日期都被覆蓋。

我希望有人可以幫助我解決這個問題。

到目前為止謝謝你。

克魯什先生

如果我正確地理解了您的問題,那么您的問題是第二圈的數據重疊:該圈仍在進行中的信息和結束后的信息。 如果要將給定單圈的所有信息都放在一行中,我建議使用多索引列或更改列名以反映單圈之間和之后的測量之間的差異。

df = pd.concat([df1, df3])
df = pd.concat([df, df2], axis=1, keys=['after', 'during'])

結果將如下所示:

             after           during
               Pos      Zeit    Pos Zeit
CLS Nr. Laps
V4  24  1        5  1:13,366    NaN  NaN
        2        5  1:11,366    5.0  NaN
    55  1        4  1:25,333    NaN  NaN
        2        4  1:21,333    4.0  NaN
    985 1        6  1:17,000    NaN  NaN
        2        6  1:11,000    6.0  NaN
V5  13  1        1  1:30,000    NaN  NaN
        2        1  1:31,000    1.0  NaN
    30  1        3  1:50,000    NaN  NaN
        2        3  1:51,000    3.0  NaN
    700 1        2  1:45,000    NaN  NaN
        2        2  1:41,000    2.0  NaN

暫無
暫無

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

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