gpt4 book ai didi

python - self 加入 Pandas

转载 作者:太空狗 更新时间:2023-10-29 22:15:03 25 4
gpt4 key购买 nike

我想对 Pandas 数据框执行自连接,以便将某些行附加到原始行。每行都有一个标记“i”,指示应在右侧附加哪一行。

d = pd.DataFrame(['A','B','C'], columns = ['some_col'])
d['i'] = [2,1,1]

In [17]: d
Out[17]:
some_col i
0 A 2
1 B 1
2 C 1

期望的输出:

  some_col  i some_col_y
0 A 2 C
1 B 1 B
2 C 1 B

也就是说,第 2 行附加到第 0 行,第 1 行附加到第 1 行,第 1 行附加到第 2 行(如 i 所示)。

我的想法是

pd.merge(d, d, left_index = True, right_on = 'i', how = 'left')

但它会产生完全不同的东西。如何正确操作?

最佳答案

除了使用 merge,您还可以使用索引和赋值:

>>> d['new_col'] = d['some_col'][d['i']].values
>>> d
some_col i new_col
0 A 2 C
1 B 1 B
2 C 1 B

关于python - self 加入 Pandas ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41434723/

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