如何合并2熊猫系列



我有两个熊猫系列(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)

CCD_ 3和CCD_。它们在相应的索引中具有相同的值。

如何使用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没有公共索引。

如果您的索引已经对齐,那么您可以使用简单的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
s3=pd.Index(s1).union(pd.Index(s2)).to_series()
s3

0     7
1     6
2     1
3     9
4     3
5     4
6    10
7    12

最新更新