熊猫:将数据连接到一行到新列

时间:2020-04-10 22:36:43

标签: python pandas dataframe merge concatenation

我是熊猫的新手,在对一行数据使用mergejoinconcatenate函数时遇到了麻烦。

我要遍历表中的少数行,并在每次迭代中将我发现的一些数据添加到要处理的行中。我知道,亵渎!您不得迭代。每次迭代都会导致对服务器的调用,因此我需要控制流程。没有那么多行。仅供我使用。我保证我不应该迭代。

此外,我的基本问题是:如何将数据添加到给定的行中,其中新数据优先于现有数据并具有新列?

假设我有一个要逐行遍历的DataFrame df

> df
  c1 c2 c3
0  a  b  c
1  d  e  f

并且在第0行进行迭代时,我得到了一些要添加到第0行的新数据。这些新数据在df_a中:

> df_a
  c4 c5 c6
0  g  h  i

我想将数据从df_a添加到df的第0行,所以df现在是:

> df
  c1 c2 c3  c4  c5  c6
0  a  b  c   g   h   i
1  d  e  f NaN NaN NaN

接下来,我在第1行进行迭代,并得到一些重叠的列,而某些列不在df_b中:

> df_b
  c5 c7 c8
0  j  k  l

再次,我想将此数据添加到第1行,以便df现在有了

> df
  c1 c2 c3  c4  c5  c6  c7  c8
0  a  b  c   g   h   i NaN NaN
1  d  e  f NaN   j NaN   k   l

我无法列出列名,因为我不知道它们将是什么,新的列可能会出现在我的控制范围之外。行没有键,因为断开连接后整个东西都被扔掉了。我在每次迭代期间发现的数据总是会覆盖df中当前的内容。

谢谢!

0 个答案:

没有答案