Python 合并两个维度相同的数据集?

Python 合并两个维度相同的数据集?,python,pandas,lambda,merge,finance,Python,Pandas,Lambda,Merge,Finance,根据股票数据,我为我想买的股票(赢家)和想买的股票(输家)创建了两个数据框。这意味着两个数据帧中不是“赢家”或“输家”的值都具有“False”值 获胜者: MMM ABT ABBV ABMD ACN ATVI ADBE AMD \ 31-10-2019 00:00 False False False False False Winner False False 29-11-2019 00

根据股票数据,我为我想买的股票(赢家)和想买的股票(输家)创建了两个数据框。这意味着两个数据帧中不是“赢家”或“输家”的值都具有“False”值

获胜者:

                   MMM    ABT    ABBV   ABMD    ACN    ATVI    ADBE     AMD  \
31-10-2019 00:00  False  False   False  False  False  Winner   False   False   
29-11-2019 00:00  False  False   False  False  False  Winner   False  Winner   
31-12-2019 00:00  False  False   False  False  False  Winner   False  Winner   
31-01-2020 00:00  False  False  Winner  False  False  Winner   False  Winner   
21-02-2020 00:00  False  False  Winner  False  False  Winner  Winner  Winner 
现在我想连接或合并这两个数据帧,这样我就得到一个数据帧,值为“Winner”、“Loser”和“False”。 没有观察到既有“赢家”又有“输家”的价值观

有什么聪明的方法把这两者结合起来吗?
我希望我的问题是可以理解的,并且我已经提供了足够的代码。

您可以根据要求使用dfs的固有值

WinLos = WinLos_df.values
WinLos2 = WinLos2_df.values
n,m = WinLos_df.shape

merged = np.empty(shape=(n,m), dtype=object)

for i in range(n):
  for j in range(m):
      merged[i,j] = False
      if WinLos[i,j]:
        merged[i,j] = 'Winner'
      if WinLos2[i,j]:
        merged[i,j] = 'Looser'

然后潜在地将合并后的数组传输到数据帧中

我是否正确理解,您希望垂直连接数据集?如果对python来说非常陌生,那么如果您集中的意思是应该添加额外的行,那么这不是我的意图。行和列应该保持不变,但值应该如下:If WinLos_df.value==WinLos2_df.value:Return'False'Elif WinLos_df.value=='Winner':Return“Winner”Elif WinLos2_df.value==''Loser':Return'Loser'
                   MMM    ABT    ABBV   ABMD    ACN    ATVI    ADBE     AMD  \
31-10-2019 00:00  False  False   False  False  False  Winner   False   False   
29-11-2019 00:00  False  False   False  False  False  Winner   False  Winner   
31-12-2019 00:00  False  False   False  False  False  Winner   False  Winner   
31-01-2020 00:00  False  False  Winner  False  False  Winner   False  Winner   
21-02-2020 00:00  False  False  Winner  False  False  Winner  Winner  Winner 
WinLos = WinLos_df.values
WinLos2 = WinLos2_df.values
n,m = WinLos_df.shape

merged = np.empty(shape=(n,m), dtype=object)

for i in range(n):
  for j in range(m):
      merged[i,j] = False
      if WinLos[i,j]:
        merged[i,j] = 'Winner'
      if WinLos2[i,j]:
        merged[i,j] = 'Looser'