gpt4 book ai didi

python - 如何创建一个带有 2 个数据帧的 pandas 数据帧,一个作为列,一个作为行

转载 作者:行者123 更新时间:2023-12-04 00:15:31 24 4
gpt4 key购买 nike

我有 2 个数据框如下:

df1 = pd.DataFrame({'Barcode':[1,2,3,4],'Store':['s1','s2','s3','s4']})    

df2 = pd.DataFrame({'Date':['2020-10-10','2020-10-09','2020-10-08','2020-10-07','2020-10-06']})

如何拥有一个数据框,其中 df1 作为行,df2 作为列,从而生成具有空值的单元格。如下所示:

enter image description here

最后一步是在另一个表(df4)上用连接填充单元格:

df4 = pd.DataFrame({'Barcode':[1,2,3,4],'Store':['s1','s2','s3','s4'],'2020-10-10':[1,2,5,np.nan],'2020-10-09':[np.nan,2,3,0],'2020-10-08':[0,0,2,3],'2020-10-07':[np.nan,1,np.nan,2]})

最终的 df 应该如下所示:

enter image description here

非常感谢任何帮助。

最佳答案

希望我正确理解了您的问题。您有 3 个数据框:

df1 = pd.DataFrame({'Barcode':[1,2,3,4],'Store':['s1','s2','s3','s4']})    
df2 = pd.DataFrame({'Date':['2020-10-10','2020-10-09','2020-10-08','2020-10-07','2020-10-06']})
df4 = pd.DataFrame({'Barcode':[1,2,3,4],'Store':['s1','s2','s3','s4'],'2020-10-10':[1,2,5,np.nan],'2020-10-09':[np.nan,2,3,0],'2020-10-08':[0,0,2,3],'2020-10-07':[np.nan,1,np.nan,2]})

然后:

df1 = pd.DataFrame(df1, columns= df1.columns.tolist() + df2['Date'].tolist())
df1 = df1.set_index('Barcode')
df4 = df4.set_index('Barcode')

print(df1.fillna(df4))

打印:

        Store  2020-10-10  2020-10-09  2020-10-08  2020-10-07  2020-10-06
Barcode
1 s1 1.0 NaN 0.0 NaN NaN
2 s2 2.0 2.0 0.0 1.0 NaN
3 s3 5.0 3.0 2.0 NaN NaN
4 s4 NaN 0.0 3.0 2.0 NaN

关于python - 如何创建一个带有 2 个数据帧的 pandas 数据帧,一个作为列,一个作为行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64306933/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com