gpt4 book ai didi

python - 如何合并 2 个 pandas 系列?

转载 作者:行者123 更新时间:2023-12-05 04:21:23 25 4
gpt4 key购买 nike

我有 2 个 pandas 系列(s1s2),如下所示:

import pandas as pd

index1 = list(range(6))
index2 = list(range(2, 8))

data1 = [7, 6, 1, 9, 3, 4]
data2 = [1, 9, 3, 4, 10, 12]

s1 = pd.Series(data=data1, index=index1)
s2 = pd.Series(data=data2, index=index2)

s1s2 有一些共同的索引。并且它们在相应索引处具有相同的值。

如何使用 s1s2 创建包含以下内容的新系列 s3:

>>> print(s3)
0 7
1 6
2 1
3 9
4 3
5 4
6 10
7 12

这是合并的另一个例子:

import pandas as pd

index1 = list(range(6))
index2 = list(range(8, 14))

data1 = [7, 6, 1, 9, 3, 4]
data2 = [7, 2, 5, 6, 10, 12]

s1 = pd.Series(data=data1, index=index1)
s2 = pd.Series(data=data2, index=index2)

s3 = merge(s1, s2)

print(s3)

# 0 7
# 1 6
# 2 1
# 3 9
# 4 3
# 5 4
# 8 7
# 9 2
# 10 5
# 11 6
# 12 10
# 13 12
# dtype: int64

在此示例中,s1s2 没有公共(public)索引。

最佳答案

如果您的索引已经对齐,那么您可以使用简单的 combine_first :

out = s1.combine_first(s2).convert_dtypes()

输出:

0     7
1 6
2 1
3 9
4 3
5 4
6 10
7 12
dtype: Int64

第二个示例输出:

0      7
1 6
2 1
3 9
4 3
5 4
8 7
9 2
10 5
11 6
12 10
13 12
dtype: Int64

关于python - 如何合并 2 个 pandas 系列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74230257/

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