首页 > 解决方案 > 熊猫:将数据连接到单行到新列

问题描述

我是 pandas 的新手,在单行数据上使用merge,join和函数时遇到了麻烦。concatenate

我正在迭代表中的几行,并在每次迭代中将我找到的一些数据添加到我正在处理的行中。我知道,亵渎神灵!你不能重复。每次迭代都会导致对服务器的调用,因此我需要控制流程。没有那么多行。这只是为了我自己的使用。我保证我不会在不应该迭代的时候进行迭代。

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

假设我有一个df按行迭代的 DataFrame:

> 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第 0 行添加到现在:dfdf

> 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.

提前致谢!

标签: pythonpandasdataframemergeconcatenation

解决方案


推荐阅读